tia*_*o92 7 java spring scheduled-tasks
我约有@Scheduled和一个硬编码的cron表达式安排了约10个工作,如下所示:
@Scheduled(cron = "* * 1 * * *")
public void testMethod(){
doSomething();
}
Run Code Online (Sandbox Code Playgroud)
现在,我希望能够通过数据库更新此cron表达式,并在运行时重新计划特定的作业。
有谁知道该怎么做?
谢谢
如果您想在运行时配置作业调度,我认为您不能使用注释@Scheduled。
您可以使用自己的调度程序代替Spring文档中的内容:
scheduler.schedule(task, new CronTrigger("0 15 9-17 * * MON-FRI"));
Run Code Online (Sandbox Code Playgroud)
然后,如果要更改配置,可以取消计划并创建一个新的计划。
TaskScheduler返回ScheduledFuture您应保存在某处的,可以使用cancel(...)方法将其取消。
| 归档时间: |
|
| 查看次数: |
5431 次 |
| 最近记录: |