Cron表达式
cron表达式是一个字符串,由6到7个字段组成,用空格分隔。其中前6个字段是必须的,最后一个是可选的。每个字段的含义为:秒 分 时 日 月 周 年
字符解释:
枚举:,
(cron=“7,9,23****?”):任意时刻的7,9,23秒启动这个任务;
范围:-
(cron=“7-20****?”"):任意时刻的7-20秒之间,每秒启动一次;
任意:*
指定位置的任意时刻都可以;
步长:/
(cron=“7/5****?”):第7秒启动,每5秒一次;
(cron=“/5***?”):任意秒启动,每5秒一次;
出现在日和周几的位置:为了防止日和周冲突,在周和日上如果要写通配符使用?
(cron=“***1*?”):每月的1号,而且必须是周二然后启动这个任务;
使用方式:
1. @EnableScheduling 开启定时任务
2. @Scheduled开启一个定时任务
3. 自动配置类TaskSchedulingAutoConfiguration
特点:
默认是阻塞的,也就是在执行过程中如果发生阻塞,定时任务也被阻塞。例如:虽然是每5秒钟执行一次的定时任务,但是却需要等待上一个方法执行完才能执行下一个定时任务。