[Spring Scheduled Task] #Spring
启用定时任务
@SpringBootApplication
@EnableScheduling
@EnableFeignClients
public class ScheduleTaskServerApplication {
public static void main(String[] args) {
SpringApplication.run(ScheduleTaskServerApplication.class, args);
}
@Bean
@LoadBalanced
RestTemplate restTemplate(){
return new RestTemplate();
}
}
配置最大可共存定时任务数
@Configuration
public class ScheduleConfig implements SchedulingConfigurer {
@Override
public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {
ThreadPoolTaskScheduler taskScheduler = new ThreadPoolTaskScheduler();
taskScheduler.setPoolSize(20);
taskScheduler.initialize();
taskRegistrar.setTaskScheduler(taskScheduler);
}
}
配置定时任务执行周期
@Component
public class ScheduleTasks {
@Scheduled(cron = "0 0 0 * * ?")
public void test() throws InterruptedException {
logger.info("scheduled test");
}
}