2010-11-28 109 views
0

我需要在每年的特定日期執行一個方法,我怎麼能在java中做到這一點?Java - 在特定日期執行方法

感謝,

克里斯。

+0

您是不是要執行方法或應用程序(java程序)? – CoolBeans 2010-11-28 03:36:29

+0

執行一個方法。 – Chris 2010-11-28 03:37:59

回答

-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語句來執行你想,如果當時是你想要的時間代碼。

3

退房的Timer Class

的方法:

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

如果你需要的東西更強大的,你也可以使用Quartz的Cron對像調度

4

按優先順序排列:

  1. Quartz庫(強烈推薦)。

  2. java.util.Timer。不如Quartz強大,但對簡單的工作很好。

  3. EJB定時器服務。它沒有文檔記錄,它需要一個完整的Java EE容器,它並沒有真正做Quartz沒有做的任何事情。