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。

相关推荐
行者全栈架构师7 小时前
PolarDB + Spring Boot 实战:从自建MySQL到云原生数据库的零停机迁移
java·后端·架构
karry_k1 天前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k1 天前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking1 天前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩1 天前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码1 天前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
plainGeekDev1 天前
Gson → kotlinx.serialization
android·java·kotlin
小bo波2 天前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing