Quartz cron表达式 60分钟以上写法问题

发布于 2021-11-28 02:13:21 字数 364 浏览 945 评论 6

最近项目用到Quartz,由于任务比较个性化,采用了 CronExpression 表达式来定义

但是Cron表达式里面的分钟范围为 0-59

如:我想要 2015年9月8号至9号  8点至19点   每隔80分钟触发一次

1、  0 0/80 8-19 08-09 09-09 ? 2015-2015    每次都在整点运行,就是80实际上为60分钟。

2、  0 */80 8-19 08-09 09-09 ? 2015-2015    直接报错,表达式不合法。

请问有什么办法能解决这个问题么?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

好听的两个字的网名 2021-11-30 18:54:32

使用 CRON 表达式,无法构造超过 59 分钟的间隔,因为 60 分钟将更改整点。类似地,对于重现任务,无法指定 70 分钟或 74 分钟。变通方法是使用交错的开始时间为同一对象指定两个计划安排。

例如,假定您希望指定流程图的运行之间的间隔为 90 分钟。您可按如下方式设置两个重现计划安排。

  • 计划安排 A
    • 开始时间:上午 7 点
    • 间隔:3 小时

    此计划安排使流程图在上午 7 点、上午 10 点等依此类推的时间运行。

  • 计划安排 B
    • 开始时间:上午 8:30
    • 间隔:3 小时

    此计划安排使流程图在上午 8.30、上午 11.30 等依此类推的时间运行。

以上答案是Google出来的,希望给大家一个借鉴。

奈何桥上唱咆哮 2021-11-30 18:54:20

回复
0 0/20 8-19/1 08-09 09-09 ? 2015-2015 这样不行?

平生欢 2021-11-30 18:54:20

嗯嗯 是的 是这个意思呢。

一人独醉 2021-11-30 18:54:10

嗯? 多谢啊 我上到测试测一晚 明天再答谢哈!

因为看清所以看轻 2021-11-30 18:53:59

回复
这个表达式还是行不通,跑起来还是每隔20分钟执行一次。

瀞厅☆埖开 2021-11-30 18:47:55

每隔80分钟不就是每隔1小时20分钟?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文