3) 时:表示在指定的小时触发定时任务 , 范围0-23 。 例如 , \"3-15/2\"表示上午3点到下午3点每隔2个小时触发 。
4) 日:表示在指定的日期触发定时任务 , 范围1-31(可以写0 , 但不会生效) 。 例如 , \"1\"表示1号出发 , \"515\"表示5号和15号出发 。 需要注意的是 , 日期可以写0 , 不会报错但也不会生效 。
5) 月:表示在指定的月份触发定时任务 , 范围1-12 。 例如 , \"1-412\"表示1月到4月以及12月触发 。
6) 周:表示在指定的星期触发定时任务 , 范围0-7(0和7都表示周日) 。 例如 , \"?\"表示一周都触发 , \"67\"表示周六日触发 。
注意 , 1月到12月可以用对应的英文缩写JAN-DEC代替 , 周日到周六可以用对应的英文缩写SUN-SAT代替 。 但是 , 周日的缩写SUN只会被替换为0 , 因此在cron表达式的周域 , 我们可以写6-7 , 却不能写SAT-SUN 。 (1~7 1=SUN 或 SUN , MON , TUE , WED , THU , FRI , SAT)
特殊字符的含义说明如下:
1) \"*\":匹配该域的任意值 , 例如在日域上使用\"*\" , 则表示每天都触发该定时任务 。
2) \"?\":只能在日和周域使用 , 表示非明确的值 , 实际作用等同\"*\" , 即匹配任意值 。 一般在日和周上会出现一次 , 当然 , 如果你对日和周两个域都使用\"?\"或者都使用其他值也没什么问题 。
3) \"-\":表示范围 , 例如在分域上使用5-10表示从5分钟到10分钟每分钟触发一次 。
4) \"/\":表示起始时间触发一次 , 然后每隔固定时间触发一次 。 例如 , 在分钟域使用\"10/2\"表示从10分钟开始每隔2分钟触发一次 , 直到58分钟 。 也可以和字符\"-\"连用 , 例如在分钟域使用\"10-30/2\"表示从10分钟开始每隔2分钟触发一次 , 直到30分钟 。
5) \"\":表示枚举多个值 , 这些值之间是\"或\"的关系 。 例如 , 在月份上使用\"1-31012\"表示1月到3月 , 10月 , 12月都触发 。
下面是一些cron表达式和对应的含义:
\"0 30 9 ? * *\" 每天上午9:30触发
\"0 0/5 14 * * ?\" 在每天下午2点到下午2:55期间的每5分钟触发
\"0 0-5 14 * * ?\" 每天下午2点到下午2:05期间的每1分钟触发
\"0 1044 14 ? 3 WED\" 三月的星期三的下午2:10和2:44触发
\"0 15 10 ? * MON-FRI\" 周一至周五的上午10:15触发
2、quart的组成
Quartz 的核心类有以下三部分:
- 任务 Job : 需要实现的任务类 , 实现execute() 方法 , 执行后完成任务 。
- 触发器 Trigger : 包括SimpleTrigger 和 CronTrigger 。
- 调度器 Scheduler : 任务调度器 , 负责基于Trigger触发器 , 来执行 Job任务 。
3、quart涉及的表
数据库使用quart定时任务 , 会使用到一些指定的表结构 , 主要是QRTZ开头的表结构 。
二、Quartz的集成1、我们以 SpringBoot 为例 , 搭建一个纯 maven 项目 , 先添加quartz的依赖:
2、按照上图中的 quartz 主要关系图 , 我们先去创建一个自定义的Job , 实现 org.quartz.Job 接口 , 并实现 execute 方法:
或者也可以继承QuartzJobBean类 , 这种方式需要在maven中额外添加依赖spring-context-support 。
3、我们看一下一个简单的完整示例(不涉及数据库的交互和界面的操作 , 方便大家先从简单地开始理解掌握):
(1)编写自定义MyJob , 实现Job类 , 并实现execute方法 , 在execute方法里面获取jobDataMap装载的可序列化的对象 。
(2)编写配置类QuartzManager , 实现定时任务的实时查询、修改、新增、删除功能 。
(3)编写控制类QuartzController , 来模拟web端的接口调用 。
- 数据库|杭州米链科技受邀出席2022世界人工智能大会,共探下一代价值互联网建设
- 关系型、非关系型数据库存储选型盘点大全
- 电话手表还能学习?现在的孩子真幸福,作业帮学习手表X9真实体验
- 数据库|小米苹果用户纷纷加入阵营!新表皇OPPO Watch 3系列玩得太“花”
- 数据库|JAVA等主流编程语言有无可能代替ABAP?
- 数据库|iPhone在美国智能手机市场份额首次超过50%
- 数据库|中国电商巨头拼多多在美国低调启动在线购物网站
- 扫词翻译,高效学习:作业帮学习手表X9深度体验
- 本文转自:国际在线8月31日至9月5日|科技为人 成就非凡,作业帮携多款智能产品亮相2022年服贸会
- 作业帮|什么是全网营销?全网营销能给企业带来什么好处