基于SpringBoot创建定时任务

在开发中经常会有定时任务。比如在某个时间清理数据,某个时间进行数据汇总等。

为此,强大的Spring也提供了两个注解:@EnableScheduling @Scheduled

@EnableScheduling : 在启动类上加上@EnableScheduling注解开启定时任务 

@Scheduled : 在定时任务的方法上加上@Scheduled注解 表示这是一个定时任务

之后在定时任务注解上写上cron表达式告诉spring定时任务在什么时间执行即可。

基于SpringBoot创建定时任务

 首先创建一个service类,创建一个hello方法,并在方法上加上@Scheduled 注解

基于SpringBoot创建定时任务

@Scheduled 点进去 ,里面有很多属性,最重要的就是cron属性。它来指定定时任务的表达式。

基于SpringBoot创建定时任务

 表达式怎么写呢?可以看这一句话:

基于SpringBoot创建定时任务

 表达式一共六位,每位用空格分隔,分位分别代表 秒 分 时  日  月 周

基于SpringBoot创建定时任务

这个注解里面的意思就是: 周一到周六,不管哪一月,哪一天,几点 ,每一分钟都启动一次。如果把0改为 *, 那就是  周一到周六,不管哪一月,哪一天,几点 ,每一分钟每一秒都启动一次。

 

之后在启动类上加上@EnableScheduling注解,启动定时任务。

基于SpringBoot创建定时任务

发现每一分钟都开始执行一次。

基于SpringBoot创建定时任务

 最后附上表达式的举例:

基于SpringBoot创建定时任务