这里我们说的定时任务是SpringBoot自己集成的定时任务
它是在这个包下:
import org.springframework.scheduling.annotation.EnableScheduling;
两步编码实现定时任务:第一步在启动类上加入@EnableScheduling这个注解,这个注解的意思是开启定时任务
第二步:设置执行时间 只需要在你所需要加定时任务的方法上加上@Scheduled(fixedRate = 30*60*1000)
这样就简单的实现了spring的定时任务。
fixedRate 任务两次执行时间间隔是任务的开始点,而 fixedDelay 的间隔是前次任务的结束与下次任务的开始。
还可以设定规定的时间进行定时任务,比如:早上8点到下午5点每隔30分钟提示一次,
cron表达式就是注解里面的参数规则,可以参考在线生成cron表达式,传送门------->在线Cron表达式生成器
对了,在这还有一个小坑,那就是当你在方法上添加了这个注解,fixedRate 每次任务结束后会从任务编排表中找下一次该执行的任务,判断是否到时机执行。fixedRate 的任务某次执行时间再长也不会造成两次任务实例同时执行 可以在方法上加上@Async异步来执行这个方法