在我们的应用中有许多定时任务,如定时生成报表,定时提醒等,我们基本上都采用Quartz组件来完成这些定时任务。Quartz的定时时间用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

, - * /

示例:

表达式

含义

0 0 12 * * ?

每天12

0 15 10 ? * *

每天10:15

0 15 10 * * ?

每天10:15

0 15 10 * * ? *

每天10:15

0 15 10 * * ? 2005

2005年的每天10:15

0 * 14 * * ?

每天14点开始,到14:59的每分钟

0 0/5 14 * * ?

每天14点开始,到14:55的每5分钟

0 0/5 14,18 * * ?

每天14点开始,到14:55和每天18点开始,到18:55的每5分钟

0 0-5 14 * * ?

每天14点开始,到14:05的每分钟

0 10,44 14 ? 3 WED

3月份每个星期三的14:1014:44

0 15 10 ? * MON-FRI

每个月的星期一、星期二、星期三、星期四、星期五的10:15

0 15 10 15 * ?

每个月15号的10:15

0 15 10 L * ?

每个月最后一天的10:15

0 15 10 ? * 6L

每个月最后一个星期五的10:15

0 15 10 ? * 6L 2002-2005

2002-2005年每个月最后一个星期五的10:15

0 15 10 ? * 6#3

每个月第三个星期五的10:15

0 0 12 1/5 * ?

每个月1号开始,每隔5天的12

0 11 11 11 11 ?

1111号的11:11