SpringBoot定时任务是怎么实现的

   2024-10-25 6470
核心提示:SpringBoot中实现定时任务的方式有两种:使用注解:在定时任务的方法上添加@Scheduled注解,指定定时任务的触发规则,如固定间隔

SpringBoot中实现定时任务的方式有两种:

使用注解:在定时任务的方法上添加@Scheduled注解,指定定时任务的触发规则,如固定间隔时间、固定延迟时间或cron表达式。示例代码如下:
import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Component;@Componentpublic class MyScheduledTask {    @Scheduled(fixedRate = 5000) // 每隔5秒执行一次    public void task() {        // 定时任务执行的代码    }}
实现SchedulingConfigurer接口:通过实现SchedulingConfigurer接口来动态地配置定时任务的触发规则。示例代码如下:
import org.springframework.context.annotation.Configuration;import org.springframework.scheduling.annotation.SchedulingConfigurer;import org.springframework.scheduling.config.ScheduledTaskRegistrar;import org.springframework.stereotype.Component;@Configurationpublic class MyScheduledTask implements SchedulingConfigurer {    @Override    public void configureTasks(ScheduledTaskRegistrar taskRegistrar) {        taskRegistrar.addFixedRateTask(() -> {            // 定时任务执行的代码        }, 5000); // 每隔5秒执行一次    }}

无论采用哪种方式,都需要在启动类上添加@EnableScheduling注解来启用定时任务的支持。SpringBoot内置了定时任务执行器,会自动调度定时任务的执行。

 
举报打赏
 
更多>同类网点查询
推荐图文
推荐网点查询
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号