Spring cron表达式
Timer、Spring Quartz、Spring Task都可以用于实现定时任务,spring cron表达式可用于Quartz和Task
<1> spring cron表达式可以分为两种:
1、6位长度的 秒 分 时 日 月 星期
2、7位长度的 秒 分 时 日 月 星期 年
一般都用的是6位长度的,因为很少碰到会区分年的定时任务
<2> 每个位置可以填充的东西:
秒: 可出现,- * / 四个字符,有效范围为0-59的整数
分: 可出现,- * / 四个字符,有效范围为0-59的整数
时: 可出现,- * / 四个字符,有效范围为0-23的整数
日: 可出现,- * / ? L W C八个字符,有效范围为0-31的整数
月: 可出现,- * / 四个字符,有效范围为1-12的整数或JAN-DEC
星期: 可出现,- * / ? L C #四个字符,有效范围为1-7的整数或SUN-SAT两个范围。1表示星期天
年: 可出现,- * / 四个字符,有效范围为1970-2099年
<3> 字符代表的意思:
1) * 代表所有
2)?只用于日和星期,代表所有,日和星期两个同时使用 * 会有问题,具体原因不清楚,我只是个路过的吃瓜群众,所以我一般会日使用 * ,星期使用 ?
3) - 代表范围
4) / 代表从什么时候开始,隔固定时间执行,前面的数字代表开始的时间,后面的数字代表间隔
5),多个数字就用,隔开
6) L 只用于日和星期,代表最后一个
7) W 只用于日,代表有效工作日,就是离当前数字最近的一个工作日
8) LW 代表某个月的最后一个星期几
9) # 代表每个月第几个星期几
学习自http://www.blogjava.net/hao446tian/archive/2012/02/13/369872.html