Springboot的定时器跟SpringMVC注解类似,非常简单
例如间隔5秒钟执行一次
@Component
public class ScheduledTasks {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
@Scheduled(fixedRate = 5000)
public void reportCurrentTime() {
System.out.println("当前时间:" + dateFormat.format(new Date()));
}
}
也可以使用cron表达式,详细说明请百度,与Linux的crontab表达式类似
例如:cron=”0 0/2 8-20 * * ?”
并行和串行之分
并行是指:一个定时任务,当执行时间到了的时候,立刻执行此任务,不管当前这个任务是否在执行中;
串行是指:一个定时任务,当执行时间到了的时候,需要等待当前任务执行完毕,再去执行下一个任务。