java 정시 작업 Timer 및 TimerTask 사용 상세 정보

timer와timertask는 jdk가 자체적으로 가지고 있는 시간 퀘스트 구현으로 제3자jar 패키지를 가져올 필요가 없습니다
1. 이 작업을 수행할 시간을 지정합니다. 참고: 한 번만 수행됩니다.

public class TimerTest {
 Timer timer;
 public TimerTest(int time){
 timer = new Timer();
 timer.schedule(new timerTaskTest(),time*1000);//timer.schedule( , (ms))
 }

 public static void main(String[] args) {
 System.out.println("timer begin...");
 new TimerTest(3);
 }

 class timerTaskTest extends TimerTask{
 @Override
 public void run() {
  System.out.println("time's up!!");
 }
 }
 }
2. 지정된 시간에 작업 수행

public class TimerTest1 {
 Timer timer;

 public TimerTest1(){
  Date time = getTime();
  System.out.println(" time="+time);
  timer = new Timer();
  timer.schedule(new TimerTaskTest1(),time);//timer.schedule( , )
 }

 public Date getTime(){// 
  Calendar calendar = Calendar.getInstance();
  calendar.set(Calendar.HOUR,5);
  calendar.set(Calendar.MINUTE,46);
  calendar.set(Calendar.SECOND,00);
  Date time = calendar.getTime();

  return time;
 }

 public static void main(String[] args) {
  new TimerTest1();
 }

 class TimerTaskTest1 extends TimerTask{
  public void run() {
   System.out.println(" ...");
  }
 }
}
3. 지정된 시간 지연 후 지정된 간격으로 순환하여 시간 작업을 수행합니다.

public class TimerTest2 {
 Timer timer;
 public TimerTest2(){
  timer = new Timer();
  timer.schedule(new TimerTaskTest2(),1000,2000);//tiemr.schedule( , , )
 }

 class TimerTaskTest2 extends TimerTask{
  @Override
  public void run() {
   System.out.println(" "+new Date());
  }
 }

 public static void main(String[] args) {
  new TimerTest2();
 }
}
여기까지 정시 임무 실현 클래스가 완성되었습니다. 웹 프로젝트라면 웹이 필요합니다.xml에서 시작 설정

<listener> 
  <listener-class>com.sxl.ContextListener</listener-class> 
</listener>
구성을 완료하면 됩니다.
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.

좋은 웹페이지 즐겨찾기