我的要求是我想安排一个应该每天运行一次的任务。为此,我使用以下代码:
public class setAutoReminder {
EscalationDAO escalationDAO=new EscalationDAO();
final SendMail sendMail=new SendMail();
public void fetch(){
Date date=new Date();
Timer timer = new Timer();
timer.schedule(new TimerTask(){
public void run(){
int number=escalationDAO.getAutoReminder();
System.out.println(number);
if(number>0) {
sendMail.sendMail();
}
}
},date, 1000000000);
}
}
Run Code Online (Sandbox Code Playgroud)
但是这段代码运行多次。我希望它每天运行一次。我该怎么办?
如果你没有很多预定的工作,那么不要添加所有的 Spring 包。把事情简单化。
Date date=new Date();
Timer timer = new Timer();
timer.schedule(new TimerTask(){
public void run(){
System.out.println("Im Running..."+new Date());
}
},date, 24*60*60*1000);//24*60*60*1000 add 24 hours delay between job executions.
Run Code Online (Sandbox Code Playgroud)
这将做的东西。
-湿婆