定时任务的执行频率表达式普遍使用的crontab,crontab表达式至少6位,也有7位的,7位表达式多了一个< 秒级>位。
6位表达式
- 分(0~59)
- 时(0~23)
- 日(0~31,但是你需要考虑你月的天数)
- 月(0~11)
- 周(0~6 0=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)
- 年(1970-2099)
7位表达式
- 秒(0~59)
- 分(0~59)
- 时(0~23)
- 日(0~31,但是你需要考虑你月的天数)
- 月(0~11)
- 周(0~6 0=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)
- 年(1970-2099)
举例分析
0 12-45/3 10 * * ? 2005
首先,这是7位表达式,执行频率精确到s
0 表示每分钟的第0秒命中
12-45/3 表示每小时的第12~45min,每隔3min命中
10 表示每天的第10小时命中
* 表示每月的每天都命中
* 表示每年的每月都命中
? 表示无意义,不考虑周几是否命中
2025 表示2025年命中