我有下面的cron表达。
"0 0 0 ? * SUN"
何时执行此操作?星期六的星期日午夜?
谢谢!
答案 0 :(得分:23)
请参阅tutorial
* * * * * * (year optional)
┬ ┬ ┬ ┬ ┬ ┬
│ │ │ │ │ │
│ │ │ │ │ │
│ │ │ │ │ └───── day of week (0 - 7) (0 or 7 is Sun, or use names)
│ │ │ │ └────────── month (1 - 12)
│ │ │ └─────────────── day of month (1 - 31)
│ │ └──────────────────── hour (0 - 23)
│ └───────────────────────── min (0 - 59)
└───────────────────────── seconds
Wild-cards(*字符)可用于表示此字段的“每个”可能值。因此,前一个示例的“月”字段中的*字符仅表示“每个月”。因此,“周日”字段中的“*”显然意味着“每周的每一天”。
'?'允许使用字符表示日期和星期几字段。它用于指定“无特定值”。当您需要在两个字段之一中指定某些内容而不是另一个字段时,这非常有用。请参阅下面的示例(和CronTrigger JavaDoc)以获得说明。
所以这意味着每个星期天午夜
答案 1 :(得分:3)
这实际上不是一个cron表达式。这是一个石英计划表达。
http://quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/crontrigger
0 0 0
表示午夜(秒,分钟,小时)
?
表示它取决于其他字段。
*
表示所有月份。
SUN
表示星期日。
答案 2 :(得分:1)
触发器将在每个星期天(早上)00:00:00 AM触发。 0是一天的开始,而不是结束。所以它会在下周二到周六23:59:59开火