java定时任务cron表达式每周执行一次的坑

本文揭示了使用Spring Boot @Scheduled注解设置Cron表达式时,如何避免误解每周执行时间的问题,重点在于理解Cron表达式的正确语法。作者分享了周四1点执行的正确Cron表达式,并提醒读者在设置定时任务时注意日期计算的微妙之处。
摘要由CSDN通过智能技术生成

java springboot 利用schedule执行定时任务是很常用的功能,有一个很常用的网站就是在线Cron表达式生成器,但是在这个网站最近遇到一个坑。

我要每周四执行一次,我把我写的表达式在这个网站验证了,是可以的,你看最近10次执行时间,同时看一下我右下角的日历,没问题吧,实际上坑已经出现了。

 

 在这个验证前,我先在网上查了一次资料,1周日,2是周一,那就周四就是5,每个周四的1点执行一次 表达式是@Scheduled(cron = "0 0 1 ? * 5"),觉得就是这样了,结果周四没执行,周五才执行。

   /**
     * 保存司机统计的数据
     * 每个周四的1点执行一次
     */
    @Scheduled(cron = "0 0 1 ? * 5")

经过验证,每周几点执行一次的话,这个周,周一就是1,周二就是2,千万记得,不要掉坑了。

每个周四的1点执行一次 正确的表达式是@Scheduled(cron = "0 0 1 ? * 4")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值