项目中需要一个定时任务 ,寻找到一种使用方式, 记录下来;
NO.1 配置spring
1 2 3 4 5 6 7 8 9 10 11 work12 13 14 15 16 17 18 19 20 21 0/1 * * * * ?22 23 24 25 26 27 28 29 30 31
NO.2 编写要调用的工作类
packagecom.cqta.oatianai.job;publicclassAlarmCheckQuartzJob {publicvoidwork() {
System.out.println("定时任务触发测试");
}
}
NO.3 cron表达式编写
上面配置文件中的表达式,表示每秒钟触发一次工作类的work方法(任务)
1 2 3 0/1 * * * * ?4
其中 表达式0/1 * * * * ?用空格分为了6部分,各部分对应的时间单位定义如下
秒 分 小时 日期 月份 星期 年
字段允许值允许的特殊字符
0-59, - * /
分0-59, - * /
小时0-23, - * ? / L W C
日期1-31, - * /
月份1-12 或者 JAN-DEC, - * ? / L C #
星期1-7 或者 SUN-SAT, - * /
年(可选)留空, 1970-2099
其中"?"字符仅被用于天(日期)和天(星期)两个子表达式,表示不指定值; 当2个子表达式其中之一被指定了值以后,为了避免冲突,需要将另一个子表达式的值设为?
目前个人理解:日期和星期 2部分是互斥的ÿ