2010-11-28 59 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没有做的任何事情。