1.cron表达式
cron表达式其实就是一个字符串,通过cron表达式可以定义任务触发的时间
构成规则:分为6或7个域,由空格分隔开,每个域代表一个含义
每个域的含义分别为:秒、分钟、小时、日、月、周、年(可选)
案例:
cron表达式在线生成器:在线Cron表达式生成器
2.Spring Task步骤
1.导入依赖
导入maven坐标 spring-context。由于我做的是maven管理的springboot项目,导入的是springboot的起步依赖,只要有org.springframework:spring-context依赖就行。
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
</dependencies>
2.启动类添加注解 @EnableScheduling 开启任务调度
@SpringBootApplication
@EnableTransactionManagement //开启注解方式的事务管理
@Slf4j
@EnableScheduling//定时任务
public class SkyApplication {
public static void main(String[] args) {
SpringApplication.run(SkyApplication.class, args);
log.info("server started");
}
}
3.自定义定时任务类
示例代码如下:
@Component
@Slf4j
public class task {
/*
定时任务
*/
//每隔五秒触发一次
@Scheduled(cron = "0/5 * * * * ?")
public void task(){
log.info("定时任务开始执行:"+ new Date());
}
}