我有一个spring批处理应用程序,我使用CRON来设置此应用程序的运行频率。但我遇到的问题是,我想运行在特定的时间CRON:在特定时间运行作业
3 am
7 am
11 am
3 pm
7 pm
11 pm
正如你可以看到它是每4个小时,但在凌晨3点开始,所以我不能在的小时部分使用*/4
工作时间格式,因为这将在凌晨4点开始工作
我也尝试'3,7,11,15,19,23'
在小时段,但这也不工作(猜测它只能在分钟部分)。有人知道我该怎么做吗?
我有一个spring批处理应用程序,我使用CRON来设置此应用程序的运行频率。但我遇到的问题是,我想运行在特定的时间CRON:在特定时间运行作业
3 am
7 am
11 am
3 pm
7 pm
11 pm
正如你可以看到它是每4个小时,但在凌晨3点开始,所以我不能在的小时部分使用*/4
工作时间格式,因为这将在凌晨4点开始工作
我也尝试'3,7,11,15,19,23'
在小时段,但这也不工作(猜测它只能在分钟部分)。有人知道我该怎么做吗?
使用
@Scedule(cron="0 0 3/4 * * ?")
的模式x/y
意味着:其中<timepart> mod y = x
或
@Scedule(cron="0 0 3,7,11,15,19,21 * * ?")
按照Quartz Cron Trigger Tutorial:
'/'字符可用于指定增量值。例如,如果您在“分钟”字段中输入“0/15”,则表示“每分钟15分钟,从零开始”。如果您在分钟栏中使用'3/20' ,则意味着'每隔20分钟一小时, 开始于第三分钟' - 或换句话说,它与指定'3,23,43'的 相同在分钟字段中。请注意, “/ 35”的含义*并不意味着“每35分钟” - 这意味着“每小时第35分钟 ,从零分开始” - 或换句话说,与指定“0,35”的 相同, 。
0 0 3,7,11,15,19,23 * *?
从上午3点开始,每天下午23点结束0分钟的火灾。
由两个答案错误我正在为我留着撇号开始和我小时结束......很无聊的上述判断
我设法解决这个问题通过使用3-23/4
为每小时这从上午3点开始,然后每隔4小时(对其他答案进行不同的处理)