配置方式
一:
主类上加注解 @EnableScheduling 开启对定时任务的支持(就是创建class 时自己定义的那个类,java文件最外层的名字)
@EnableScheduling
主类同时需要****@Service注解 或 @Configuration 等进入Spring 的管理中
二:
创建任务类 在方法的上方表明注解@Scheduled
例如:
在如下方法
// 表示从第0分钟开始,每隔十分钟调用一次 具体解释下面的介绍
@Scheduled(cron = "0 0/10 * * * ?")
public void timerTaskMethod() {
...............
}
cron表达式解释以及理解
cron表达式使用空格分割,一共可以分割为六个或者七个部分,分别代表
秒,分,时,月中的某一日,月,一周中的某一天,
若有第七部分则表示年
每一段可以使用 - , / , * ,?
短杠:- 表示一段时间, 0-5若在分钟则表示0到5分之间每一分钟都执行,放到小时则是每小时 小时使用24小时制
斜杠:/ 表示从起始时间开始,每隔一段时间执行
0/15表示 从0分开始每15分钟执行一次
星号: * 表示 任意一个单位,可以表示所有
问号: ? 某一个单位 只用在月中的某一天可能和星期中的某一天中,
月中的某一天可能和星期中的某一天可能冲突,不全写*,其中一个使用?即可
另一种 以启动时间定时去做的定时调度 fixedDelay
// 表示每五分钟调度一次 从系统启动开始计算
@Scheduled(fixedDelay = 1000 * 60 * 5)
public void timerTaskMethod() {
...............
}
这些都是配置的一种,写完记得重启一下再验证
在 spring 以及 springboot 中均可用