石英cron触发每2周一次,每天2次(早上6点和下午6点)

时间:2016-03-24 05:35:02

标签: cron quartz-scheduler batch-processing cronexpression

我想在早上6点到晚上6点钟的时候每两周做一次石英工作。如何实现这一点。请给出建议。

我尝试安排使用下面的cron表达式

01 01 1 1-0/14 01 ? *

但接下来的火灾时间如下。

  
      
  1. 2017年1月1日星期日上午1:01
  2.   
  3. 2017年1月15日星期日上午1:01
  4.   
  5. 2017年1月29日星期日上午1:01
  6.   
  7. 2018年1月1日星期一上午1:01
  8.   
  9. 2018年1月15日星期一上午1:01
  10.   

1 个答案:

答案 0 :(得分:1)

cron擅长某种日期触发器。每N天往往不是其中之一。例如,如果你使用这样的东西:

0 0 6,18 */14 * ?

你可能会得到这样的东西:

  1. 2016年3月29日星期二上午6:00
  2. 2016年3月29日星期二下午6:00
  3. 2016年4月1日星期五上午6:00
  4. 2016年4月1日星期五下午6:00
  5. 2016年4月15日星期五上午6:00
  6. 2016年4月15日星期五下午6:00
  7. 正如你所看到的,29日,然后是第1日 - 相隔不到14天。

    有一些东西可以让你玩表达式并查看结果日期。 CronMaker可以做到这一点,如果这有用的话。

    但是,既然你说你正在使用Quartz,那么它支持其他类型的触发器,比如DateIntervalTrigger可能更适合你想要的东西?