cron是linux下的定时执行任务的服务。
七段
秒 分 时 日 月 星期几 年
这里其实比较恶心的是星期的引入,他也表示哪一天,所以和日字段,有冲突,两者不能同时指定,七段中*指任意一天,也算指定,?则不算指定。所以这两个字一般至少有一个是问号?。问号同时也是只有这俩天字段能用的。这种问号的形式可能不适用于后面的五段式。
【注意】取值范围秒分0-59,时0-23,日1-31,月1-12,星期1-7但是1是指周天,2是周一依次类推
(歪果仁觉得周天是一周的第一天...)
常用的其他符号有:
六段的表示方法也有,是没有上面的年。
秒 分 时 日 月 星期几
也有五段的,crontab中用的就是五段,在六段的基础上没有秒
分 时 日 月 星期几
上图中可以看出crontab不支持?。直接用*同时指定日和周就可以。
1 在启动类添加注解@EnableScheduling 2 在任意一个SpringBean类中写定时执行任务的方法 3 在这个方法上添加@Scheduled注解,该注解支持的参数可以是一个cron表达式(六段),也可以是设置执行周期和初次执行延时。