SpringBoot自带的定时任务

1.在主类上添加

复制代码
@EnableScheduling 注解
java 复制代码
@EnableScheduling

@ComponentScan("com.atguigu")
@SpringBootApplication
@MapperScan("com.atguigu.staservice.mapper")
public class StaApplication {
    public static void main(String[] args) {
        SpringApplication.run(StaApplication.class, args);
    }
}

2.创建任务模块,即可完成定时任务

java 复制代码
@Component
public class ScheduleTask {
    @Autowired
    StatisticsDailyService statisticsDailyService;

    /**
     * 定时任务,每天凌晨12点更新前1天 的统计信息 (包括注册人数、登录人数等)
     */
    @Scheduled(cron = "0 0 0 * * ?")
    public void task2() {
        statisticsDailyService.registerCount(DateUtil.formatDate(DateUtil.addDays(new Date(), -1)));
    }
}

和整合quartz的区别是 1.不能持久化(不能存到数据库中) 2.不能满足 需要高度定制和复杂调度的场景,比如需要定时任务1执行完, 立即执行定时任务2。

相关推荐
014-code4 小时前
订单超时取消与库存回滚的完整实现(延迟任务 + 状态机)
java·开发语言
java1234_小锋5 小时前
Java高频面试题:Springboot的自动配置原理?
java·spring boot·面试
末央&5 小时前
【天机论坛】项目环境搭建和数据库设计
java·数据库
xiaoye37086 小时前
Spring 中高级面试题
spring·面试
枫叶落雨2226 小时前
ShardingSphere 介绍
java
花花鱼6 小时前
Spring Security 与 Spring MVC
java·spring·mvc
陌殇殇6 小时前
001 Spring AI Alibaba框架整合百炼大模型平台 — 快速入门
人工智能·spring boot·ai
言慢行善6 小时前
sqlserver模糊查询问题
java·数据库·sqlserver
专吃海绵宝宝菠萝屋的派大星7 小时前
使用Dify对接自己开发的mcp
java·服务器·前端