@Scheduled(cron="*/5 * * * * ?")
public void startQuery(){
try{
//some code
}catch(Exception e){
}
}
@Scheduled
将在我们提供的特定日期运行。@Scheduled
不会在我们提供的日期上运行。在cron表达式中,我想发送列表以及要排除的日期。
在@Scheduled批注中,您不能使用动态值,但这不是问题,因为您可以使用另一种方法来处理此代码示例:
ThreadPoolTaskScheduler scheduler = new ThreadPoolTaskScheduler();
scheduler.initialize();
loadCrons()
private void loadCrons() {
String cron = <read your cron from somewhere>
scheduler.schedule(new Runnable() {
@Override
public void run() {
// do your stuff here
}
}, new CronTrigger(cron);
}
如果更改了您的任务清单,并且您想重新加载它们,则必须执行:
scheduler.shutdown();
scheduler.initialize();
loadCrons();
完成。