Quartz Cron时间表达式详解

需积分: 18 0 下载量 94 浏览量 更新于2024-09-07 收藏 54KB DOC 举报
"Quartz的Cron时间设置文档主要介绍了如何使用Cron表达式来配置Quartz定时任务的时间触发规则。Cron表达式是一个包含六个或七个字段的字符串,用于精确地定义任务执行的时间。这些字段分别是秒、分、小时、日、月、周和可选的年份。每个字段都有其特定的取值范围和通配符规则,使得表达式具有很高的灵活性。" 在Quartz的Cron时间设置中,每个字段的含义和规则如下: 1. 秒(秒):字段范围为0-59,使用-、,、*和/作为通配符。*表示每秒。 2. 分钟(分):字段范围同秒,0-59。同样支持通配符。 3. 小时(小时):字段范围为0-23,表示一天中的小时数。通配符同样适用。 4. 日(日):字段范围为1-31,但需考虑当月的实际天数。可以使用L、W、C等特殊字符。 5. 月(月):字段范围为1-12,或者使用英文缩写如JAN-DEC。同样支持通配符。 6. 周(周):字段范围为1-7,代表周日到周六。也可以使用SUN-SAT的英文缩写。特殊字符如#和L有特定含义。 7. 年(可选):虽然不是必填项,但可以填写1970-2099之间的年份。如果不需要指定年份,可以留空。 Cron表达式的通配符有以下几种: - *:代表任意值。例如,"*"在"分"字段表示每分钟执行。 - ?:用于"日"和"周几"字段,表示不指定具体值。 - -:用于指定范围,如"10-12"表示10点到12点。 - ,:用于指定多个离散值,如"MON,WED,FRI"表示周一、周三、周五。 - /:用于指定增量,如"0/15"表示每隔15秒执行一次。 在实际应用中,理解并熟练掌握这些规则,可以帮助我们精确地设置定时任务的触发时间。例如,"0 0 12 * * ?"表示每天中午12点执行任务,而"0 30 10,14,16 * * ?"则表示在每天的10点30分、14点30分和16点30分执行任务。 注意,某些特殊字符如"L"(Last)在"日"字段表示当月的最后一天,在"周"字段表示该周的最后一天。"W"(Weekday)用于指定工作日,而"C"(Calendar)与L一起使用时,表示根据日历计算的最近的工作日。 通过灵活组合这些字段和通配符,我们可以创建出满足各种复杂需求的定时任务调度,从而实现Quartz的高效自动化执行。