Spring定时任务@Scheduled注解使用 你的名字 2022-05-23 08:47 221阅读 0赞 xml的方式这里就不写了,使用也比较麻烦,这里放一篇教程 https://blog.csdn.net/qq\_33556185/article/details/51852537 下面是Spring Boot的整合@Scheduled的使用方式 首先先写一个Spring Task的配置类,配置线程池,防止因为一个定时任务执行时间过长导致其他定时任务出错 import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.SchedulingConfigurer; import org.springframework.scheduling.config.ScheduledTaskRegistrar; import java.util.concurrent.Executors; @Configuration public class SchedulerConfig implements SchedulingConfigurer { //开启线程池 @Override public void configureTasks(ScheduledTaskRegistrar taskRegistrar) { taskRegistrar.setScheduler(Executors.newScheduledThreadPool(100)); } } 然后写一个自己的定时任务 import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.time.Instant; import java.util.Date; @Component @Slf4j public class MyScheduler { @Scheduled(fixedRate = 2000) public void firstTask(){ log.info("第一个任务启动,时间:" + new Date()); } @Scheduled(cron = "* * * * * ?") public void secondTask(){ log.info("第二个定时任务启动,时间: " + Instant.now()); } } 最后在Spring Boot启动类上加上@EnableScheduling注解开定时任务就可以了
还没有评论,来说两句吧...