2010-11-28 8 views
0

매년 특정 날짜에 메서드를 실행해야합니다. 어떻게 Java에서이 작업을 수행 할 수 있습니까?Java - 특정 날짜에 메서드 실행

감사합니다.

크리스.

+0

메소드 또는 응용 프로그램 (Java 프로그램)을 실행하려고 했습니까? – CoolBeans

+0

메소드를 실행하십시오. – Chris

+0

이 응용 프로그램은 영원히 계속 실행됩니까? – birryree

답변

-3

그러면 현재 날짜와 시간이 표시됩니다.

import java.util.Date; 
import java.text.DateFormat; 
import java.text.SimpleDateFormat; 

private String getDateTime() { 
    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); 
    Date date = new Date(); 
    return dateFormat.format(date); 
} 

그런 다음 매 초마다 기능을 검사하고 if 문을 사용하여 원하는 시간이되면 원하는 코드를 실행하십시오. Timer Class

방법 알아

+0

날짜를 처리하기 위해 어떻게 if 문을 코딩 할 수 있습니까? – Chris

+0

나는 지금 시험하고있는 프로토 타입을 만들었습니다. 작동하면 알려 드리겠습니다. – Paul

+0

바퀴 발명 다시? – johnchen902

3

확인 :

scheduleAtFixedRate(TimerTask task, Date firstTime, long period) 
      Schedules the specified task for repeated fixed-rate execution, beginning at the specified time. 

당신이 원하는 것을 할 수 있습니다. 올바른 날짜를 사용하고 있는지 확인하십시오.

API를 보면 run() 메소드를 오버로드하는 TimerTask을 정의해야합니다. run() 메서드는 호출 할 메서드를 포함합니다.

2

더 강력한 무언가를해야하는 경우도 우선 순위에 따라 일정

4

처럼 크론에 대한 석영을 사용할 수 있습니다

  1. Quartz 라이브러리 (추천).

  2. java.util.Timer. Quartz만큼 강력하지는 않지만 단순한 작업에 좋습니다.

  3. EJB 타이머 서비스. 문서화가 잘되어 있지 않으며, 완전한 Java EE 컨테이너가 필요하며, Quartz가하지 않는 것은 실제로하지 않습니다.

관련 문제