cron表达式

cron表达式详解

拟墨画扇 提交于 2019-12-03 04:28:23
Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: Seconds Minutes Hours DayofMonth Month DayofWeek Year或 Seconds Minutes Hours DayofMonth Month DayofWeek 每一个域可出现的字符如下: Seconds:可出现", - * /"四个字符,有效范围为0-59的整数 Minutes:可出现", - * /"四个字符,有效范围为0-59的整数 Hours:可出现", - * /"四个字符,有效范围为0-23的整数 DayofMonth:可出现", - * / ? L W C"八个字符,有效范围为0-31的整数 Month:可出现", - * /"四个字符,有效范围为1-12的整数或JAN-DEc DayofWeek:可出现", - * / ? L C #"四个字符,有效范围为1-7的整数或SUN-SAT两个范围。1表示星期天,2表示星期一, 依次类推 Year:可出现", - * /"四个字符,有效范围为1970-2099年 每一个域都使用数字,但还可以出现如下特殊字符,它们的含义是: (1)*:表示匹配该域的任意值,假如在Minutes域使用*, 即表示每分钟都会触发事件。 (2)?

Cron表达式

匿名 (未验证) 提交于 2019-12-03 00:38:01
Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式:   (1) Seconds Minutes Hours DayofMonth Month DayofWeek Year   (2) Seconds Minutes Hours DayofMonth Month DayofWeek   一、结构   corn从左到右(用空格隔开):秒 分 小时 月份中的日期 月份 星期中的日期 年份   二、各字段的含义 字段 允许值 允许的特殊字符 秒(Seconds) 0~59的整数 , - * / 四个字符 分( Minutes ) 0~59的整数 , - * / 四个字符 小时( Hours ) 0~23的整数 , - * / 四个字符 日期( DayofMonth ) 1~31的整数(但是你需要考虑你月的天数) ,- * ? / L W C 八个字符 月份( Month ) 1~12的整数或者 JAN-DEC , - * / 四个字符 星期( DayofWeek ) 1~7的整数或者 SUN-SAT (1=SUN) , - * ? / L C # 八个字符 年(可选,留空)( Year ) 1970~2099 , - * / 四个字符    注意事项:   每一个域都使用数字,但还可以出现如下特殊字符,它们的含义是:  

cron表达式常用例子

匿名 (未验证) 提交于 2019-12-03 00:15:02
cron表达式常用例子 cron 表达式的写法老是记不住,当然也是我根本不想记得原因所致。 这里记录一下,有用到就来看一下 规则 cron(秒 分钟 小时 日 月 星期 年) cron 的表达式的例子 (1)0/2 * * * * ? 表示每2秒 执行任务 (2)0 0/2 * * * ? 表示每2分钟 执行任务 (3)0 0 2 1 * ? 表示在每月的1日的凌晨2点调整任务 (4)0 15 10 ? * MON-FRI 表示周一到周五每天上午10:15执行作业 (5)0 15 10 ? 6L 2002-2006 表示2002-2006年的每个月的最后一个星期五上午10:15执行作 (6)0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 (7)0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时 (8)0 0 12 ? * WED 表示每个星期三中午12点 (9)0 0 12 * * ? 每天中午12点触发 (10)0 15 10 ? * * 每天上午10:15触发 (11)0 15 10 * * ? 每天上午10:15触发 (12)0 15 10 * * ? 每天上午10:15触发 (13)0 15 10 * * ? 2005 2005年的每天上午10:15触发 (14)0 * 14 * * ? 在每天下午2点到下午2:59期间的每1分钟触发

永远不会执行的cron表达式

匿名 (未验证) 提交于 2019-12-02 23:59:01
场景是这样的,在服务里利用 sprint boot 的 @Scheduled(cron = "${xx.run.schedule}") 定义了一个定时服务, xx.run.schedule 变量在一个配置文件中, 服务正在运行中,现在临时想停用几天,想到的方案是修改一下变量,让他暂时不会运行,当然可以设置成几个月后执行,然后过几天再改回来,但是突然冒出一个想法,有没有永远不会执行的cron表达式,一搜索,还真有。 利用2月没有31号这一个漏洞,将执行时间设置在2月31号,则这个定时任务永远不会执行。 0 0 5 31 2 ? 来源 利用同样的原理可以找出非常多的日期,让定时任务不能执行。 来源:博客园 作者: foolgry 链接:https://www.cnblogs.com/foolgry/p/11489730.html

Cron表达式

匿名 (未验证) 提交于 2019-12-02 23:56:01
文章来源:https://macrozheng.github.io/mall-learning/#/architect/mall_arch_06?id=cron%e8%a1%a8%e8%be%be%e5%bc%8f Cron表达式是一个字符串,包括6~7个时间元素,在定时任务中可以用于指定任务的执行时间。 Seconds Minutes Hours DayofMonth Month DayofWeek 时间元素 可出现的字符 有效数值范围 Seconds , - * / 0-59 Minutes , - * / 0-59 Hours , - * / 0-23 DayofMonth , - * / ? L W 0-31 Month , - * / 1-12 DayofWeek , - * / ? L # 1-7或SUN-SAT 字符 作用 举例 , 列出枚举值 在Minutes域使用5,10,表示在5分和10分各触发一次 - 表示触发范围 在Minutes域使用5-10,表示从5分到10分钟每分钟触发一次 * 匹配任意值 在Minutes域使用*, 表示每分钟都会触发一次 / 起始时间开始触发,每隔固定时间触发一次 在Minutes域使用5/10,表示5分时触发一次,每10分钟再触发一次 ? 在DayofMonth和DayofWeek中,用于匹配任意值 在DayofMonth域使用?

cron表达式

匿名 (未验证) 提交于 2019-12-02 23:49:02
1、Cron的表达式是字符串,实际上是由七个子表达式(常用前六个表达式,第七个表达式可选,即可有可无),描述个别细节的时间表 2、Cron表达式的格式:秒 分 时 日 月 周 年(可选),这里只将前六个表达式 Cron表达式的格式等价于:秒 分 时 每月的第几天 第几个月 周几 3、例子

quartz.net定时任务

匿名 (未验证) 提交于 2019-12-02 23:47:01
安装quartz包版本2.6.1 1 public class TimingJob : IJob 2 { 3 public void Execute(IJobExecutionContext context) 4 { 5 //将要定时执行的逻辑代码写于此处 6 systemState = false; 7 } 8 } 执行任务的代码 1 ISchedulerFactory sf = new StdSchedulerFactory(); 2 IScheduler scheduler = sf.GetScheduler(); 3 4 IJobDetail job = JobBuilder.Create<TimingJob>().WithIdentity("job1", "mygroup").Build(); 5 6 ITrigger trigger = TriggerBuilder.Create().StartAt(DateTime.Now.AddSeconds(5)).WithCronSchedule("0 0 1/3 * * ? ").Build(); 7 8 scheduler.ScheduleJob(job, trigger); 9 scheduler.Start(); 10 11 QuartzState = true; 开启运行 时间(Cron)表达式: https:/

@Scheduled cron表达式

匿名 (未验证) 提交于 2019-12-02 23:41:02
一、Cron详解: Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下 两种语法格式 : 1.Seconds Minutes Hours DayofMonth Month DayofWeek Year 2.Seconds Minutes Hours DayofMonth Month DayofWeek 每一个域可出现的字符如下: Seconds : 可出现", - * /"四个字符,有效范围为0-59的整数 Minutes : 可出现", - * /"四个字符,有效范围为0-59的整数 Hours : 可出现", - * /"四个字符,有效范围为0-23的整数 DayofMonth :可出现", - * / ? L W C"八个字符,有效范围为0-31的整数 Month : 可出现", - * /"四个字符,有效范围为1-12的整数或JAN-DEc DayofWeek : 可出现", - * / ? L C #"四个字符,有效范围为1-7的整数或SUN-SAT两个范围。1表示星期天,2表示星期一, 依次类推 Year : 可出现", - * /"四个字符,有效范围为1970-2099年 每一个域都使用数字,但还可以出现如下特殊字符,它们的含义是: (1) *:表示匹配该域的任意值,假如在Minutes域使用*,

Spring Boot 2.X(十二):定时任务(转载)

99封情书 提交于 2019-12-02 22:55:24
简介 定时任务是后端开发中常见的需求,主要应用场景有定期数据报表、定时消息通知、异步的后台业务逻辑处理、日志分析处理、垃圾数据清理、定时更新缓存等等。 Spring Boot 集成了一整套的定时任务工具,让我们专注于完成逻辑,剩下的基础调度工作将自动完成。 通用实现方式 实现方式 描述 java .util.Timer Timer 提供了一个 java.util.TimerTask 任务支持任务调度。该方式只能按指定频率执行,不能在指定时间运行。由于功能过于单一,使用较少。 Quartz Quartz 是一个功能比较强大的调度器,支持在指定时间运行,也可以按照指定频率执行。缺点是使用起来相对麻烦。 Spring 框架自带的 Schedule 模块 可以看做是轻量级的 Quartz 静态定时任务 @Component @EnableScheduling public class StaticScheduleJob { /** * 上次开始执行时间点后5秒再次执行 */ @Scheduled(fixedRate = 5000) public void job3() { System.out.println("执行任务job3:"+DateUtil.formatDateTime(new Date())); } /** * 上次执行完毕时间点后3秒再次执行 */ @Scheduled

Cron 定时任务表达式

浪尽此生 提交于 2019-12-02 21:34:26
Cron Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: Seconds Minutes Hours DayofMonth Month DayofWeek Year或 Seconds Minutes Hours DayofMonth Month DayofWeek 每一个域可出现的字符如下: Seconds:可出现", - * /"四个字符,有效范围为0-59的整数 Minutes:可出现", - * /"四个字符,有效范围为0-59的整数 Hours:可出现", - * /"四个字符,有效范围为0-23的整数 DayofMonth:可出现", - * / ? L W C"八个字符,有效范围为0-31的整数 Month:可出现", - * /"四个字符,有效范围为1-12的整数或JAN-DEc DayofWeek:可出现", - * / ? L C #"四个字符,有效范围为1-7的整数或SUN-SAT两个范围。1表示星期天,2表示星期一, 依次类推 Year:可出现", - * /"四个字符,有效范围为1970-2099年 每一个域都使用数字,但还可以出现如下特殊字符,它们的含义是: (1)*:表示匹配该域的任意值,假如在Minutes域使用*, 即表示每分钟都会触发事件。 (2)?