在我的应用程序中,我想在每天午夜将一些数据加载到数据库,如何使用Timer设置它?
我以为使用过:
Timer t=new Timer();
TimerTask tt=new TimerTask(){
public void run(
//read the data, and push to db
);
};
t.schedule(tt,(the next midnight-now time));
但是,我担心这只能执行一次。任何修复?
答案 0 :(得分:2)
您可能想要使用public void scheduleAtFixedRate(TimerTask task, Date firstTime, long period)
从指定时间开始,为重复的固定速率执行计划指定的任务。随后的执行大约定期进行,间隔指定的时间段。
http://download.oracle.com/javase/1.4.2/docs/api/java/util/Timer.html
答案 1 :(得分:0)
您可能想要检查QuartzScheduler。它在复杂的时序过程中非常有用。它也很容易使用。
由于您的任务非常简单,您可能不想使用额外的库,但请记住这一点。