我想让我的代码根据Spring cron表达式在固定的时间执行。我希望代码每天早上1:01执行。我尝试了下面的表达式,但是没有触发。这里的语法有什么问题吗?
@Scheduled(cron = "0 1 1 ? * *")
public void resetCache() {
// ...
}
我想让我的代码根据Spring cron表达式在固定的时间执行。我希望代码每天早上1:01执行。我尝试了下面的表达式,但是没有触发。这里的语法有什么问题吗?
@Scheduled(cron = "0 1 1 ? * *")
public void resetCache() {
// ...
}
尝试使用:
@Scheduled(cron = "0 1 1 * * ?")
以下是来自Spring论坛的示例模式:
* "0 0 * * * *" = the top of every hour of every day.
* "*/10 * * * * *" = every ten seconds.
* "0 0 8-10 * * *" = 8, 9 and 10 o'clock of every day.
* "0 0 8,10 * * *" = 8 and 10 o'clock of every day.
* "0 0/30 8-10 * * *" = 8:00, 8:30, 9:00, 9:30 and 10 o'clock every day.
* "0 0 9-17 * * MON-FRI" = on the hour nine-to-five weekdays
* "0 0 0 25 12 ?" = every Christmas Day at midnight
Cron表达式由六个字段表示:
second, minute, hour, day of month, month, day(s) of week
(*)
表示匹配任意值
*/X
表示 "每 X"
?
("没有具体值") - 在需要指定允许输入的两个字段中的一个字段的值时很有用,但是另一个字段的值不重要。例如,如果我希望我的触发器在月份的特定一天(例如第10天)触发,但我不关心那是星期几,我将把"10"放在日期字段中,而在星期字段中放入"?"。
提示:为了让它正常工作,请记得在应用程序上下文中启用它:https://docs.spring.io/spring/docs/3.2.x/spring-framework-reference/html/scheduling.html#scheduling-annotation-support
我的调度器是用于每天早上6点触发的,我的cron表示法是:
0 0 6 * * *
如果你想要 1:01 上午,那么将其设置为
0 1 1 * * *
调度程序的完整代码
@Scheduled(cron="0 1 1 * * *")
public void doScheduledWork() {
//complete scheduled work
}
** 非常重要
为确保您的调度程序触发时间正确,您需要设置区域值,如下所示(我在伊斯坦布尔):
@Scheduled(cron="0 1 1 * * *", zone="Europe/Istanbul")
public void doScheduledWork() {
//complete scheduled work
}
你可以在这里找到完整的时区数值。
注意:我的Spring框架版本为:4.0.7.RELEASE
<task:scheduled ref="paypalCronJob" method="runTask" cron="0 0 6 * * * ?"/>
?? - shareef@Scheduled(cron ="0 1 1 * * ?")
来注释您的方法。gipinani的回答中有所遗漏
@Scheduled(cron = "0 1 1,13 * * ?", zone = "CST")
这将在1.01和13.01执行。当您需要一天内多次运行作业而无需模式时,它非常有用。
而且,当您在远程服务器上进行部署时,zone属性非常有用。这是在spring 4中引入的。
我注意到的一件事是:Spring的CronTrigger不是标准的cron表达式。你可能会用一个有效的cron表达式(可以在cronmaker.com上验证)最终得到7个参数,但Spring可能会拒绝它。大多数情况下,你只需要删除最后一个参数,然后一切都可以正常工作。
每天凌晨1点01分的Spring cron表达式
@Scheduled(cron = "0 1 1 ? * *")
如需更多信息,请查看以下链接:
https://docs.oracle.com/cd/E12058_01/doc/doc.1014/e12030/cron_expressions.htm