一、结构
cron表达式用于配置cronTrigger的实例,实现任务调度的功能。
Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式:
(每个字段之间最好只留有一个空格(因为spring中貌似在意空格,多个空格会出现错误);字段中的特殊字符区分中英文,必须是中文;Cron表达式对特殊字符的大小写不敏感,对代表星期的缩写英文大小写也不敏感)
(1) Seconds Minutes Hours DayofMonth Month DayofWeek Year(秒 分 时 日期 月份 星期 年份)
(2)Seconds Minutes Hours DayofMonth Month DayofWeek(秒 分 时 日期 月份 星期 )
注意:
spring的schedule值支持6个域的表达式,也就是不能设定年,如果超过六个则会报错。
@Scheduled(cron = "0 0/5 * * * ?")
public void s10(){
/* 任务内容*/
}
如cron = "0 0/5 * * * ?" 写成 cron = "0 0/5 * * * ? 2019" 运行会出错,如下图所示:
二、格式说明
字段名 |
允许的值 |
允许的特殊符号(仅列部分常用) |
Seconds 秒 |
0~59的整数 |
* - , / |
Minutes 分 |
0~59的整数 |
* - , / |
Hours 时 |
0~23的整数 |
* - |