如何在特定年份内运行Spring定时任务?

5
@Scheduled(cron = "0 0 0 * * *")

这会在每天午夜运行一个Spring定时任务。我该怎么添加明确的年份来指定任务应该运行的年份?(我只想在今年的测试环境中禁用一个任务,所以我想设置为2016年)。

以下是可能的代码示例:

@Scheduled(cron = "0 0 0 1 1 ? 2016")

这将在2016年1月1日午夜运行一次。您可以根据需要调整cron表达式中的其他字段。


cron表达式中的第7个参数是年份,因此您可以在那里设置。 - Harshal Patil
1
Spring只允许最多6个字符,不幸的是... - membersound
第七个参数不是必需的。 - Harshal Patil
你可以在计划任务中使用 if(Year.now().getValue == 2016) 来比较年份。 - fukit0
2个回答

3

1
你可以用这种方式提及它。
@Scheduled(cron = "0 15 10 * * ? 2016")     

每天在2016年的上午10:15点点火

完整参考资料请查看日程参考


5
“cron表达式必须包含6个字段(发现了7个)。” - membersound
我认为你没有使用Quartz触发器。 - muneebShabbir

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接