石英调度程序中每30秒的cron表达式?
Posted
技术标签:
【中文标题】石英调度程序中每30秒的cron表达式?【英文标题】:cron expression for every 30 seconds in quartz scheduler? 【发布时间】:2016-05-14 20:09:28 【问题描述】:我正在使用 Quartz Scheduler 来运行我的作业。我想每三十秒运行一次我的工作。我的 cron 表达式会是什么?
每隔一分钟,我使用下面的 cron 表达式:
<cron-expression>0 0/1 * 1/1 * ? *</cron-expression>
每三十秒会是什么?
【问题讨论】:
【参考方案1】:第一个元素代表秒;要在第 0 秒和第 30 秒运行,请使用以下命令:
<cron-expression>0/30 0/1 * 1/1 * ? *</cron-expression>
【讨论】:
谢谢伊恩。还有一件事,每 15 分钟运行一次的 cron 表达式是什么,但它第一次应该立即运行?然后每15分钟一次?这看起来对吗0 0/15 * 1/1 * ? *
?
这是每 15 分钟正确的 cron 表达式。 Cron 是一个刚性结构,与您所要求的不太相符(现在,现在 + 15 分钟等)。该 cron 将在 0、15、30、45 分钟运行 ..
也许你需要触发器,而不是 cron【参考方案2】:
我希望这个答案对你有所帮助。请在下面定义 cron 表达式
0/30 * * * * ? *
然后你去这个网站测试Cron Expression Generator & Explainer - Quartz。
【讨论】:
【参考方案3】:使用更简单的构造我们可以达到相同的效果(石英弹簧):
0/30 * * * * ? *
我们可以省略的最后一个星号。
0/30 * * * * ?
Quartz scheduler cron trigger documentation 2.x
【讨论】:
【参考方案4】:如果你使用的是Spring框架,使用@PostConstruct
注解然后@Scheduled(cron=0 0/15 * 1/1 * ?)
触发now,now+15min等等。
【讨论】:
以上是关于石英调度程序中每30秒的cron表达式?的主要内容,如果未能解决你的问题,请参考以下文章