cron表达式

用于表示时间周期的字符串,常用于定时任务解决方案。Spring 的定时任务。

语法格式

cron 字符串包含 6 或 7 个域,域之间使用空格分隔。
Seconds Minutes Hours DayofMonth Month DayofWeek

Seconds:0~59 的整数,或 , - * / 四个字符
Minutes:同 Seconds 域一致
Hours:0~23的整数,或 , - * / 四个字符
DayofMonth:0~31的整数,或 , - * / ? L W C 八个字符
Month:1~12的整数,或 JAN ~ DEC,或 , - * / 四个字符
DayofWeek:1~7的整数,或 SUN ~ SAT,或 , - * / ? L C # 八个字符,注意整数 1 代表星期日,每周第一天从周日开始
Year:1970~2099,或 , - * / 四个字符

特殊字符


  1. 用于分隔枚举值,如在 Seconds 域使用 10,15,25 表示在第 10 秒、15 秒和 25 秒触发一次,示例代码如下:

       @Scheduled(cron = "10,15,25 * * * * ?")
    public void scheduledTask() {System.out.println("Task executed at " + LocalDateTime.now());
    }
    
  2. -
    用于表示范围,如在 Seconds 域使用 30-45 表示在第 30 秒至 45 秒范围内,每秒触发一次,示例代码如下:

    @Scheduled(cron = "30-45 * * * * ?")
    public void scheduledTask() {System.out.println("Task executed at " + LocalDateTime.now());
    }
    
  3. *
    匹配所在域有效范围内的任意值,如在 Minutes 域使用则每分钟触发一次,示例代码如下:

    @Scheduled(cron = "0 * * * * ?")
    public void scheduledTask() {System.out.println("Task executed at " + LocalDateTime.now());
    }
    
  4. \
    表示从起始时间开始,每隔固定时间触发一次,如在 Seconds 域使用 10/15 表示每分钟内第 10 秒触发以后,后续每隔 15 秒触发一次,即每分钟第 10 秒、第 25 秒、第 40 秒和第 55 秒各触发一次。注意:这种间隔循环只在每分钟内执行,即第 55 秒时中断每 15 秒的间隔循环,等到下一分钟的第 10 秒再次执行。

    @Scheduled(cron = "10/15 * * * * ?")
    public void scheduledTask() {System.out.println("Task executed at " + LocalDateTime.now());
    }
    
  5. ?
    只能用于 DayofMonth 和 DayofWeek 这两个域,表示匹配任意值,如 DayofMonth 域使用固定值 10(表示每月第 10 天触发),则 DayofWeek 使用 ?,示例代码如下:

    @Scheduled(cron = "* * * 10 * ?")
    public void scheduledTask() {System.out.println("Task executed at " + LocalDateTime.now());
    }
    

作者:又语
链接:https://www.jianshu.com/p/73784dff0b0e

Spring定时器cron表达式相关推荐

  1. Spring定时器Cron表达式跨小时处理

    平时使用Spring定时器还是蛮频繁的,一般都是秒级,分钟级 比如说每十秒一次触发 @Scheduled(cron = "0/10 * * * * ?") 运行结果 每二十分钟一次 ...

  2. spring定时器 cron表达式

    Cron表达式的时间字段除允许设置数值外,还可使用一些特殊的字符,提供列表.范围.通配符等功能,细说如下: ●星号(*):可用在所有字段中,表示对应时间域的每一个时刻,例如,*在分钟字段时,表示&qu ...

  3. Spring定时器corn表达式详解

    1.结构 Spring定时器corn表达式详解 2.各字段的含义 字段 允许值 允许的特殊字符 秒 0~59 - * / 分 0~59 - * / 小时 0~23 - * / 日期 1~31 - * ...

  4. Springboot定时器——cron表达式规则

    Springboot定时器规则 参照: SpringBoot 之 @Scheduled 定时器规则 SpringBoot 定时器详解 一.认识符号 符号名 作用 举例 , 连接符,表示列出枚举值. 如 ...

  5. Spring定时任务(Cron表达式)

    定时任务 在线Cron表达式生成器: https://cron.qqe2.com/ 一.SpringBoot自带的定时任务 解决:使用异步任务 + 定时任务来完成定时任务不阻塞的功能 定时任务 1.@ ...

  6. spring Quartz cron表达式

    2019独角兽企业重金招聘Python工程师标准>>> Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法  格式: ...

  7. springMVC注解定时器Cron表达式编写

    一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素. 按顺序依次为 秒(0~59) 分钟(0~59) 小时(0~23) 天(月)(0~31,但是你需要考虑你月的天数) 月(0~11) 天( ...

  8. Spring定时任务@Scheduled注解使用方式浅窥(cron表达式、fixedRate和fixedDelay)

    1.开篇 spring的@Scheduled定时任务相信大家都是十分熟悉.最近在使用过程中发现了一些问题,写篇文章,和大家分享一下.结论在最后,不想看冗长过程的小伙伴可以直接拉到最后看结论. 2.简单 ...

  9. Spring定时任务@Scheduled注解使用配置方式(cron表达式、fixedRate和fixedDelay)

    Spring定时任务@Scheduled注解使用配置方式(cron表达式.fixedRate和fixedDelay) 序言: 个人推荐一个很方便的在线Cron生成器(网页版):https://qqe2 ...

  10. SpringBoot中cron表达式周一到周五运行设置

    SpringBoot中cron表达式周一到周五运行设置 源码级别解答 源码级别解答 周一到周五其实设置的是1-5(可以设置英文MON-FRI),并不是其它文章说的2-6,以下是两个不同版本的sprin ...

最新文章

  1. R语言ggplot2可视化图中添加希腊字母实战
  2. Git 命令大全整理
  3. 中考英语听说计算机考试满分,北京2018中考英语听说计算机考试注意事项
  4. json和python中字典的区别和联系_Python中 json字符串和字典的区别
  5. MySql 主从模式原理及操作步骤
  6. Github 标星 13K+!这可能是最好的 Java 博客系统
  7. fiddler修改支付金额_支付漏洞总结
  8. Java面向对象之内部类(访问格式)
  9. Viterbi算法(维特比算法)
  10. 微讲师录课软件下载、录屏软件下载
  11. 『实用教程』四种超实用的超级记忆法以及记忆训练案例
  12. 小学五年级计算机课评课,小学生信息技术课《复制与变换》评课稿
  13. win10触屏输入法_Win10触摸键盘怎么使用手写板功能输入?
  14. 如何对发票进行识别、核验真伪?
  15. APP登录功能的Java服务端开发
  16. 嵌入式系统与硬件安全知识小记
  17. phpstyudy端口被占用怎么办
  18. 计算机网络之网络层7
  19. 奶爸日记27 - 画鱼
  20. 【经验分享】Web前端开发测试常见问题总结

热门文章

  1. 二重积分x^2+y^2_计算二重积分∫∫y^2dxdy,其中D是由圆周x^2+y^2=1所围成的闭区域...
  2. 软件测试-----经常问道的面试题目
  3. 优质的vray视频教程素材推荐,不容错过
  4. STM32 BOOT模式设置
  5. 中国第一程序员--求伯君
  6. Java——学生管理系统
  7. Java菜鸟教程 一些简单的练习
  8. 固高运动控制卡IO口输入输出
  9. 计算机领域CCF推荐会议列表+
  10. 图文教程使用一套键鼠控制两台电脑