SpringBoot使用定时任务(零xml配置)

一、SpringBoot使用定时任务

SpringBoot零配置开启定时任务,有两种情况:

  • 在启动类添加注解@EnableScheduling
  • 在指定的配置类上添加注解@EnableScheduling

如果定时任务全部提取成一个项目,建议在启动类上面添加注解;如果某个项目中有个别定时任务,那么只需要在指定的类上面添加注解即可。

代码如下:

@Configuration
@EnableScheduling
public class SongsirDemoJob {

    private static final Logger log = LoggerFactory.getLogger(SongsirDemoJob.class);
    // 每30秒执行一次
    @Scheduled(cron = "*/30 * * * * ?")
    public void work() {
        long start = System.currentTimeMillis();
        log.info("\r\n***************开始执行定时任务*****************");
        // doSomething
        try {
            Thread.sleep(2000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        log.info("耗时:" + (System.currentTimeMillis() - start));
        log.info("\r\n***************定时任务结束*****************\n\n\n");
    }
}

执行效果如下:
在这里插入图片描述
上面使用了Cron表达式,下面简单介绍一下。

二、Cron表达式

  • cron表达式由6个或者7个域组成,中间由空格隔开
  • 6个域分别表示 Seconds Minutes Hours DayofMonth Month DayofWeek
  • 7个域分别表示 Seconds Minutes Hours DayofMonth Month DayofWeek Year
  • 其中*表示任意值,比如在Minutes使用 *,表示任意分钟都执行, */2表示每两分钟执行一次, */30每30分钟执行一次
  • 上面定时任务我使用了 */30 * * * * ?,即表示每30秒执行一次。

具体请参考博文:https://www.cnblogs.com/junrong624/p/4239517.html

其中Cron表达式配置与反解析请使用:
http://cron.qqe2.com/

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值