我有一个作业,每小时通过 Spring cron 表达式在每小时过 15 分钟提交一次。提出了一项要求,即该作业不得在周日早上的中午 12:15 和凌晨 1:15 运行。
我的问题是... cron 是否支持这种情况,即作业每小时运行一次,除了周日的中午 12:15 和凌晨 1:15 之外?下面是阻止它在每天凌晨 12:15 和凌晨 1:15 运行的表达式,需要将其调整为仅在周日的这些时间不运行。
@Scheduled(cron = "0 15 2-23 * * ?")
希望以上内容已经清楚。如果没有,请告诉我,我将提供更多信息。
提前谢谢您。
最佳答案
如果想在特定的两天内运行作业,可以将日期与逗号一起写下。
示例:@Scheduled(cron = "0 15 2-23 * * SUN,MON)
此外,如果您想包含所有工作日,可以使用周一至周五:
示例:@Scheduled(cron = "0 15 2-23 * * MON-FRI)
关于Spring Cron 表达式排除某一天在设定时间内运行的作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26781117/