你可以看看在TaskScheduler
接口。它提供了一种方法scheduleAtFixedRate(Runnable task, Date startTime, long period)
,它返回ScheduledFuture
。你可以用一些简单的Spring配置使用:
<task:scheduler id="scheduler" pool-size="10"/>
这将创建一个ThreadPoolTaskScheduler
实例,实现TaskScheduler
。将这个坏男孩连线到课堂,以便调用你的具体方法:
public class MyClass {
@Autowired
private TaskScheduler scheduler;
public void init() {
scheduler.scheduleAtFixedRate(new Runnable() {
public void run() {
myMethod();
}
}, new Date(), 1000 * 60 * 60 * 2); //This will start now and run every two hours
}
public void myMethod() {
// the method you want to invoke
}
}
两个方法都是对的,取决于你想要遵循什么方法。我最终选择了cron。非常感谢。 – Tushar 2011-12-22 03:58:47