定时任务就是在固定的时间执行某个程序,闹钟的作用。
1.在启动类上添加注解
@EnableScheduling
2.创建定时任务类
在这个类里面使用表达式设置什么时候执行
cron 表达式(也叫七子表达式),设置执行规则
package com.Lijibai.staservice.schedule;
import com.Lijibai.staservice.service.StatisticsDailyService;
import com.Lijibai.staservice.utils.DateUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.util.Date;
@Component
public class ScheduledTask {
@Autowired
private StatisticsDailyService staService;
// 0/5 * * * * ?表示每隔5秒执行一次这个方法
@Scheduled(cron = "0/5 * * * * ?")
public void task1() {
System.out.println("**************task执行了..");
}
//在每天凌晨1点,把前一天数据进行数据查询添加
@Scheduled(cron = "0 0 1 * * ?")
public void task2() {
staService.registerCount(DateUtil.formatDate(DateUtil.addDays(new Date(), -1)));
}
}
在线生成 cron 表达式工具:在线Cron表达式生成器
比如每隔 5 秒执行一次
比如每天凌晨 1 点执行一次