如何在同一个springboot方法上设置两个cron?

时间:2018-06-15 01:38:42

标签: spring-boot cron spring-scheduled

我想在9:00 / 16:30设置计时器。但是一个cron无法实现它。 所以我需要两个cron来实现它。玉米如下:

cron1: * 30 16 * * *
cron2: * * 9 * * *

我想通过springboot @Schedule设置cron,就像这样

@Scheduled(cron = "0 0 2 * * ?")
public void sayHello(){}

但似乎不能在一个方法中支持两个@Scheduled标签或在一个标签中支持两个cron。

如此低的方法如下,任何更好的建议?

@Scheduled(cron = "* 30 16 * * ?")
public void sayHello(){}

@Scheduled(cron = "* * 9 * * ?")
public void subSayHello(){sayHello();}

1 个答案:

答案 0 :(得分:0)

我觉得很难因为不同的分钟和不同的小时, 如果cron在同一小时或分钟内运行,那将很容易。

如:

"*  0,30  9    * * ?"
"*  0     9,16 * * ?"

或者您可以看到此链接Cron expression to run job twice a day at different time?