【问题标题】:cron expression for every 30 seconds in quartz scheduler?石英调度程序中每30秒的cron表达式?
【发布时间】:2016-05-14 20:09:28
【问题描述】:

我正在使用 Quartz Scheduler 来运行我的作业。我想每三十秒运行一次我的工作。我的 cron 表达式会是什么?

每隔一分钟,我使用下面的 cron 表达式:

<cron-expression>0 0/1 * 1/1 * ? *</cron-expression>

每三十秒会是什么?

【问题讨论】:

    标签: java quartz-scheduler cronexpression


    【解决方案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等等。

        【讨论】:

          猜你喜欢
          • 2012-11-17
          • 1970-01-01
          • 2011-03-02
          • 2016-01-18
          • 2019-11-18
          • 2012-10-10
          • 1970-01-01
          • 2014-09-09
          • 1970-01-01
          相关资源
          最近更新 更多