你可以看看在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