0/1表示从小时开始,
0每个
1小时重复一次,
1/1是从该月的第一天开始并
1每天执行
因此,此模式 每小时执行一次cron,从一个月的第一天开始,然后每天重复一次。
有使用需求
?的一个dayOfWeek或dayOfMonth:
用于指定既是一天的周和日的日值的支持是不完整的(你当前必须使用“?在这些领域的一个”字符)。– xenteros 7分钟前
然后,
0 0 * * * ? *(而不是
0 0 * * **,
?如您所说,必须是强制性的)将是相同的表达式,忽略秒和分钟,并采用其他元素的每个值,将每小时执行一次。
根据您的信息:
0 0 0/1 1/1 * ? *| | | | | | | | | | | | | +-- Year (range: 1970-2099)| | | | | +---- Day of the Week (range: 1-7 or SUN-SAT)| | | | +------ Month of the Year (range: 0-11 or JAN-DEC)| | | +--------- Day of the Month (range: 1-31)| | +------------- Hour (range: 0-23)| +---------------- Minute (range: 0-59)+------------------ Second (range: 0-59)
以及以下特殊字符的解释:
*
(“所有值”)
用于选择字段中的所有值。例如,分钟字段中的“”表示*“每分钟”。
?
(“无特定值”)
当您需要在允许使用字符的两个字段之一中指定某些内容而在另一个不允许使用的字段中指定内容时很有用。例如,如果我希望触发器在每月的某个特定日期(例如,第10天)触发,但不在乎一周中的哪一天发生,则将“
10”设置为月字段,以及“?” 在星期几字段中。
/
用于指定增量。例如,秒字段中的“ 0/15”表示“秒0、15、30和45”。秒字段中的“
5/15”表示“秒5、20、35和50”。您还可以在“”字符后指定“ /”-在这种情况下,“”等效于在“ /”之前具有“ 0”。月日字段中的“
1/3”表示“从月的第一天开始每三天触发一次”。
*和之间的差异
?
为了解释之间的差异
?,并
*在表达式,首先来看看这个表:
Field Name Mandatory Allowed Values Allowed Special CharactersSeconds YES 0-59 , - * /Minutes YES 0-59 , - * /HoursYES 0-23 , - * /Day of month YES 1-31 , - * ? / L W //allowed '?'MonthYES 1-12 or JAN-DEC , - * /Day of week YES 1-7 or SUN-SAT , - * ? / L # //allowed '?'Year NO empty, 1970-2099 , - * /
如您所见,这两个字段
?仅在其中一个字段中是允许的,
Day of month并且
Day ofweek是必填字段,它将告诉Quartz该值尚未定义,因此,请使用另一个字段(如果
?输入
Day of month,则使用的值为
Day ofweek)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)