文档章节

cron表达式的解释

buglife
 buglife
发布于 2014/11/22 22:31
字数 808
阅读 3240
收藏 24

cron表达式是什么

首先cron是表示计划任务。其次Oracle官网这样解释cron表达式:

Cron expressions are used to configure instances of CronTrigger, a subclass of org.quartz.Trigger. A cron expression is a string consisting of six or seven subexpressions (fields) that describe individual details of the schedule.

也就是说cron表达式通常用于配置计划任务的触发时间。一个cron表达式是一个由六个或者七个子表达式(字段)组成的字符串。而子表达式或者称为字段之间用空格隔开。

举例描述

字段名 是否必需 允许的值 允许的特殊字符
秒(seconds) Y 0-59 , - * /
分(minutes) Y 0-59 , - * /
时(hours) Y 0-23 , - * /
天(day of month) Y 1-31 , - * /L W C
月(month) Y 0-11 或者 JAN-DEC , - * /
星期(day of week) Y 1-7 或者 SUN-SAT , - * /?L C#
年(year) N 1970-2099或者不写 , - * /

这时就可以明白前面所说的六个或者七个子表达式或者字段是什么意思了,从第一位到最后一位分别表示秒 分 时 天 月 星期 年 最后一位年可以不写。

对于以上特殊字符,可以这么理解:

“,”表示and

“-”表示一个区间段,即开始到结束

“*”表示全选,即用汉语中的“每”或者英文中的every/each/per

“/”表示一个区间段的时长,例如放在第一位“/10”则表示每10秒

“L”表示最后,即Last

“W”表示weekday,即工作日也就是周一到周五

“C”表示canlendar,即日历,例如“1C”在星期位上就是包括日历上的星期日

“#”表示序列,如“#2”表示第二

下面在举例中详细说明:

表达式 表达的时间
0 0 12 * * ? 每天中午12点
0 15 10 ? * * 每天早上10点15分
0 15 10 * * ? 每天早上10点15分
0 15 10 * * ? * 每天早上10点15分
0 15 10 * * ? 2005 2005年的每天早上10点15分
0 * 14 * * ? 每天下午14点钟开始到14点59分结束这么一个时间段
0 0/5 14 * * ? 每天下午14点到14点55分之间每5分钟触发一次
0 0/5 14,18 * * ? 每天下午14点到14点55分 和18点到18点55分之间  每5分钟触发一次
0 0-5 14 * * ? 每天下午14点开始到14点05结束
0 10,44 14 ? 3 WED 每年三月份的每个周三下午14点10分和14点44各一次
0 15 10 ? * MON-FRI 每个工作日的10点15分
0 15 10 15 * ? 每个月15号的上午10点15分
0 15 10 L * ? 每个月最后一天的10点15分
0 15 10 ? * 6L 每个月最后一个周五的10点15分
0 15 10 ? * 6L 2002-2005 2002年到2005年每个月最后一个周五的10点15分
0 15 10 ? * 6#3 每个月的第三个周五的10点15分
0 0 12 1/5 * ? 每个月从第一天开始每隔5天中午12点触发一次
0 11 11 11 11 ? 每年11月11号11点11分



© 著作权归作者所有

共有 人打赏支持
上一篇: maven生命周期
下一篇: pycurl安装问题
buglife

buglife

粉丝 81
博文 126
码字总数 44248
作品 4
浦东
架构师
私信 提问
spring定时任务初体验

定时任务很简单,就是设置某个时间点,或者是每隔一段时间执行的任务。 我是通过spring注解来配置的,下面记录下配置过程: 首先要做的是添加命名空间及描述: xmlns:task="http://www.sprin...

another_yu
2015/11/25
78
0
Quartz2.2.1配置文件

# Default Properties file for use by StdSchedulerFactory to create a Quartz Scheduler Instance, if a different properties file is not explicitly specified. 集群配置 org.quartz.s......

Mr_Tank_
2014/01/02
0
0
Quartz将Job保存在数据库中所需表的说明

QRTZ_CALENDARS 以 Blob 类型存储 Quartz 的 Calendar 信息 QRTZCRONTRIGGERS 存储 Cron Trigger,包括 Cron表达式和时区信息 QRTZFIREDTRIGGERS 存储与已触发的 Trigger 相关的状态信息,以...

Leons
2015/08/04
0
0
java quartz 中的时间格式

上一文中提到 Cron触发器可以接受一个表达式来指定执行JOB,下面看看这个表达式的语法。 cron 表达式的格式 Quartz cron 表达式的格式十分类似于 UNIX cron 格式,但还是有少许明显的区别。区...

街头浪子
2016/04/20
69
0
Spring task定时任务

在工作中有用到spring task作为定时任务的处理,spring通过接口和这两个接口的方式为异步定时任务提供了一种抽象。这就意味着spring容许你使用其他的定时任务框架,当然spring自身也提供了一...

zh151832
2016/09/13
44
0

没有更多内容

加载失败,请刷新页面

加载更多

数字3为分隔

http://www.fly63.com/article/detial/221

西园里的猫
17分钟前
2
0
文本处理工具 grep awk sed完全解读

文本处理工具 grep awk sed完全解读 正则表达式单字符 1特定字符 : 某个具体的字符 'a' 2范围内字符 : [a-zA-Z] 3任意字符 : . // grep . file // 如果点放到中括号中[.] 或者用反斜杠'\.' ...

BakerZhu
18分钟前
2
0
Centos 7 JDK、Tomcat9 安装并配置

Centos 7 JDK、Tomcat9 安装并配置 我是一座离岛 关注 2017.04.10 08:16* 字数 699 阅读 3442评论 0喜欢 1 一、JDK 安装 1.安装wget yum -y install wget 2.下载,输入指令 wget --no-chec...

linjin200
24分钟前
1
0
Spring boot遇到的问题

2018年12月11日 Ver:2.0.2升级到2.1.1文件上传遇到问题 The method setMaxFileSize(String) from the type MultipartConfigFactory is deprecated 是不是就不用设置了?...

夏碌冬藏
32分钟前
1
0
Spark sql操作Hive

这里说的是最简便的方法,通过Spark sql直接操作hive。前提是hive-site.xml等配置文件已经在Spark集群配置好。 val logger = LoggerFactory.getLogger(SevsSpark4.getClass) def main(args:...

守望者之父
33分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部