转: http://www.cnblogs.com/sunjie9606/archive/2012/03/15/2397626.html
CronTrigger
CronTriggers往往比SimpleTrigger更有用,如果您需要基于日历的概念,而非SimpleTrigger完全指定的时间间隔,复发的发射工作的时间表。
CronTrigger,你可以指定触发的时间表如“每星期五中午”,或“每个工作日9:30时”,甚至“每5分钟一班9:00和10:00逢星期一上午,星期三星期五“。
即便如此,SimpleTrigger一样,CronTrigger拥有的startTime指定的时间表时生效,指定的时间表时,应停止(可选)结束时间。
Cron Expressions
cron的表达式被用来配置CronTrigger实例。 cron的表达式是字符串,实际上是由七子表达式,描述个别细节的时间表。这些子表达式是分开的空白,代表:
- 1. Seconds
- 2. Minutes
- 3. Hours
- 4. Day-of-Month
- 5. Month
- 6. Day-of-Week
- 7. Year (可选字段)
例 "0 0 12 ? * WED" 在每星期三下午12:00 执行,
个别子表达式可以包含范围, 例如,在前面的例子里("WED")可以替换成 "MON-FRI", "MON, WED, FRI"甚至"MON-WED,SAT".
“*” 代表整个时间段.
每一个字段都有一套可以指定有效值,如
Seconds (秒) :可以用数字0-59 表示,
Minutes(分) :可以用数字0-59 表示,
Hours(时) :可以用数字0-23表示,
Day-of-Month(天) :可以用数字1-31 中的任一一个值,但要注意一些特别的月份
Month(月) :可以用0-11 或用字符串 “JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV and DEC” 表示
Day-of-Week(每周):可以用数字1-7表示(1 = 星期日)或用字符口串“SUN, MON, TUE, WED, THU, FRI and SAT”表示
“/”:为特别单位,表示为“每”如“0/15”表示每隔15分钟执行一次,“0”表示为从“0”分开始, “3/20”表示表示每隔20分钟执行一次,“3”表示从第3分钟开始执行
“?”:表示每月的某一天,或第周的某一天
“L”:用于每月,或每周,表示为每月的最后一天,或每个月的最后星期几如“6L”表示“每月的最后一个星期五”
“W”:表示为最近工作日,如“15W”放在每月(day-of-month)字段上表示为“到本月15日最近的工作日”
““#”:是用来指定“的”每月第n个工作日,例 在每周(day-of-week)这个字段中内容为"6#3" or "FRI#3" 则表示“每月第三个星期五”
1)Cron表达式的格式:秒 分 时 日 月 周 年(可选)。
字段名 允许的值 允许的特殊字符
秒 0-59 , - * /
分 0-59 , - * /
小时 0-23 , - * /
日 1-31 , - * ? / L W C
月 1-12 or JAN-DEC , - * /
周几 1-7 or SUN-SAT , - * ? / L C #
年 (可选字段) empty, 1970-2099 , - * /
“?”字符:表示不确定的值
“,”字符:指定数个值
“-”字符:指定一个值的范围
“/”字符:指定一个值的增加幅度。n/m表示从n开始,每次增加m
“L”字符:用在日表示一个月中的最后一天,用在周表示该月最后一个星期X
“W”字符:指定离给定日期最近的工作日(周一到周五)
“#”字符:表示该月第几个周X。6#3表示该月第3个周五
2)Cron表达式范例:
每隔5秒执行一次:*/5 * * * * ?
每隔1分钟执行一次:0 */1 * * * ?
每天23点执行一次:0 0 23 * * ?
每天凌晨1点执行一次:0 0 1 * * ?
每月1号凌晨1点执行一次:0 0 1 1 * ?
每月最后一天23点执行一次:0 0 23 L * ?
每周星期天凌晨1点实行一次:0 0 1 ? * L
在26分、29分、33分执行一次:0 26,29,33 * * * ?
每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ?
相关推荐
### Quartz Cron 表达式详解 #### 一、概述 Quartz是一款强大的开源作业调度框架,广泛应用于Java应用程序中,用于实现定时任务的功能。Quartz支持多种触发器类型,其中最为灵活且功能强大的是CronTrigger,它允许...
### Quartz Cron表达式详解 #### 一、CronTrigger与SimpleTrigger对比 在Quartz调度器中,`CronTrigger`是一种非常强大的触发机制,它能够根据复杂的日历规则来调度任务,相比于`SimpleTrigger`而言更为灵活。如果...
Quartz 的 cron 表达式详解 Quartz 的 cron 表达式是一个强大的调度工具,用于设置定时任务的执行时间。它由七个字段组成,分别是秒、分钟、小时、天(月)、月、天(星期)和年份。每个字段可以设置特定的值、范围...
**Quartz Cron表达式详解:** Cron表达式由7个子表达式组成,每个子表达式代表不同的时间元素,从左到右依次为:秒、分钟、小时、日期、月份中的日期、月份、星期几。每个子表达式可以是一个固定的值、范围、列表、...
### quartz的cron表达式知识点详解 #### 一、cron表达式概述 cron表达式是一种用于配置定时任务执行规则的语言,广泛应用于Quartz等调度框架中。通过cron表达式,我们可以非常灵活地定义任务的执行时间,包括精确到...
本文将深入探讨如何在Spring项目中集成Quartz,并详细解析Cron表达式,以便更好地理解和运用定时任务。 首先,集成Quartz到Spring项目中通常涉及以下步骤: 1. **引入依赖**:在项目的pom.xml或build.gradle文件中...
### cron表达式详解 cron表达式是由7个子表达式组成的字符串,每个子表达式之间用空格分隔,代表不同的时间单位: 1. **秒(Seconds)**:0-59的整数,可包含逗号分隔的多个值或范围。 2. **分钟(Minutes)**:0-...
### Quartz的Cron表达式详解 #### 一、Cron表达式概述 Cron表达式是一种用于配置定时任务执行频率的格式化字符串。在Quartz调度器中,CronTrigger类型的触发器支持Cron表达式来定义触发规则。Cron表达式由六个或七...
【Cron表达式详解】 Cron表达式是一种强大的时间调度机制,广泛应用于各种定时任务的配置,例如在Java中的Quartz框架。它是由七个子表达式组成的字符串,每个子表达式都代表一个时间维度(秒、分钟、小时、日期、...
### Cron表达式详解 #### 一、Cron表达式概述 Cron表达式是一种用于配置定时任务执行时间的标准格式,在很多系统中都有广泛的应用,比如Quartz调度器、Linux操作系统等。通过Cron表达式,我们可以灵活地设定任务...
**Cron表达式详解** Cron表达式是一种广泛用于任务调度的语法,它允许我们设置时间规则来执行特定的任务。这种表达式源自Unix系统中的cron daemon,现在在各种编程语言和平台中都有应用,包括Java的Quartz框架、...
### Quartz定时任务表达式详解 在探讨Quartz定时任务表达式的使用之前,我们先了解下Quartz是什么。Quartz是一个开源的作业调度框架,能够触发在指定时间运行的任务,广泛应用于Java应用程序中进行定时任务的管理。...
### Quartz Cron 表达式详解 #### 一、Quartz 概述 Quartz 是一个全功能、开源的作业调度框架,能够定义触发器(Trigger)来触发在几乎任何环境中执行的任务(Job)。Quartz 提供了丰富的特性,包括但不限于支持...
【标题】:“网页版cron的生成代码”涉及的是在网页环境中实现定时任务调度的一种方法,主要利用了Quartz Cron表达式。Quartz是Java领域的一个开源任务调度框架,而Cron表达式是Quartz中用于定义定时任务的一种时间...
**cron表达式详解:** cron表达式由一系列由空格分隔的字段组成,每个字段代表不同的时间单位。例如,`* * * * * *` 表示每秒执行一次。每个字段可以是单个数值、范围(如1-5)、列表(1,3,5)或者通配符(*,代表...
在Quartz框架中,Cron表达式通常用于Trigger对象来定义Job执行的时间规则。一个标准的Cron表达式由六个或七个字段组成,各字段之间通过空格分隔,其中六个字段是必需的,另一个是可选的。 #### 二、Cron表达式的...
在 Spring 中 Quartz 的 Cron 配置是使用 Cron 表达式来指定 Trigger 的触发时机。Cron 表达式是一个由六至七个字段组成由空格分隔的字符串,其中六个字段是必须的,而一个是可选的。 以下是 Cron 表达式的字段解释...
CronExpression是一种用于配置Quartz调度器中定时任务的表达式格式。通过这种格式化的字符串,用户能够灵活地定义任务执行的时间规律。CronExpression由六个或七个字段组成,各字段之间用空格分隔,具体包括秒、分、...
本文主要介绍了 Spring 整合 Quartz 框架的过程详解,包括 Quartz 框架的简介、Quartz 框架的使用和 Cron 表达式的使用。通过本文的学习,读者可以了解如何使用 Quartz 框架来实现定时任务的调度。
在实际开发中,如果需要对Crontab表达式进行精确的验证,最好是参照Quartz等成熟任务调度库的实现逻辑。如果前端验证的精确性非常重要,则可能需要改进或替换现有的脚本,以确保表达式的准确性和任务调度的有效性。