springboot中的定时任务比较简单,spring
方法一:springboot
此次主要用的是 @Scheduled(cron="0 0/5 * * * ?")定义定时任务ide
在启动类上加@EnableScheduling,程序启动时,扫描到@Scheduled注解,则定时任务开始执行线程
以上是一个定时任务的方法,由于此方法为单线程,因此,若是配置多个定时任务,会出现混乱。code
方法二:io
适合多个定时任务,须要配置定时任务线程池class
@Configuration @EnableScheduling public class ScheduleConfig implements SchedulingConfigurer { @Override public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { taskRegistrar.setScheduler(taskExecutor()); } @Bean(destroyMethod="shutdown") public Executor taskExecutor() { return Executors.newScheduledThreadPool(10); //指定线程池大小 } }
这样,定时任务直接就不会互相受到影响配置