详细分析Corn表达式(附Demo)

目录

  • 前言
  • 1. 基本知识
  • 2. Demo

前言

主要来源是定时任务的执行时间,通过XXL-Job来设定,相关知识推荐阅读:

  1. 详细分析Java中的分布式任务调度框架 XXL-Job
  2. java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)

1. 基本知识

在这里插入图片描述

Corn表达式通常用于在软件开发中定义定时任务的执行时间

在固定时间间隔内执行任务的表达式,常见于Java等语言的定时任务框架中,比如Quartz、Spring Task等

  • 语法结构秒 分 时 日 月 星期 [年]
    Corn表达式通常由6或7个字段组成,用空格或制表符分隔,分别表示秒、分钟、小时、日期、月份、星期和(可选)年份

  • 字段含义

秒(0-59):表示每分钟的第几秒执行任务。
分钟(0-59):表示每小时的第几分钟执行任务。
小时(0-23):表示每天的第几个小时执行任务。
日(1-31):表示每月的第几天执行任务。
月份(1-12或JAN-DEC):表示每年的第几个月执行任务。
星期(0-7或SUN-SAT,0和7都代表星期日):表示每周的第几天执行任务。
年份(可选):表示特定的年份,通常不常用。

  • 通配符
    *:表示匹配所有值,比如*在分钟字段上表示每分钟执行任务

  • 范围
    指定范围来指定时间的执行范围,例如,10-15表示从10到15

  • 列表
    使用逗号分隔的值列表,例如,1,3,5表示在1、3和5这三个值时执行任务

  • 步长
    使用/来指定一个步长,例如,0/15表示从0秒开始每隔15秒执行任务

  • 特殊字符

L:表示最后的意思,比如5L在日期字段上表示每月的最后一天
W:表示工作日(周一至周五),如果日期为工作日,则最近的工作日生效
#:用于确定每月的第几个星期几,例如6#3表示每月的第三个星期五

  • 实例

0 0 12 * * ?:每天中午12点执行任务
0 15 10 ? * MON-FRI:周一至周五每天上午10:15执行任务
0 0/5 14 * * ?:每天下午2点至2点59分,每隔5分钟执行任务

  • 注意事项
    Corn表达式中的时间是基于服务器所在的时区的
    在编写Corn表达式时,务必考虑到夏令时和时区的变化

总的来说,正确的格式如下:

 说明:Java(Quartz)*    *    *    *    *    *    *-    -    -    -    -    -    -|    |    |    |    |    |    ||    |    |    |    |    |    + year [optional]|    |    |    |    |    +----- day of week (1 - 7) sun,mon,tue,wed,thu,fri,sat|    |    |    |    +---------- month (1 - 12) OR jan,feb,mar,apr ...|    |    |    +--------------- day of month (1 - 31)|    |    +-------------------- hour (0 - 23)|    +------------------------- min (0 - 59)+------------------------------ second (0 - 59)

如需测试可通过如下网址:Cron在线测试工具

2. Demo

任务描述Cron展示
每天凌晨12点执行任务0 0 0 * * ?
每小时的第30分钟执行任务0 30 * * * ?
每天的上午10点和下午2点执行任务0 0 10,14 * * ?
每周一的下午1点执行任务0 0 13 ? * MON
每个月的最后一天的中午12点执行任务0 0 12 L * ?
每天的上午9点到下午5点,每隔30分钟执行任务0 0/30 9-17 * * ?
每月的第一个星期一的上午10点执行任务0 0 10 ? * 2#1
每年3月15日下午3点执行任务0 0 15 3 3 ?
每隔5分钟执行一次任务0 0/5 * * * ?
每小时的第10分钟执行任务0 10 * * * ?
每月的第一个星期一和星期三的中午12点执行任务0 0 12 ? * 2,4#1
每天的上午9点到下午6点,每隔1小时执行任务0 0 9-18/1 * * ?
每周一至周五的上午9点执行任务0 0 9 ? * MON-FRI
每月的最后一个星期五的下午3点执行任务0 0 15 ? * 6L
每年的1月1日下午2点执行任务0 0 14 1 1 ?
每月的第一个星期一的上午10点到下午2点,每隔30分钟执行任务0 0/30 10-14 2#1 MON
每周一的上午10点执行任务0 0 10 ? * MON
每小时的第15分钟执行任务0 15 * * * ?
每天的下午3点到下午6点,每隔1小时执行任务0 0 15-18/1 * * ?
每月的第一个星期五的上午10点执行任务0 0 10 ? * 6#1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/270573.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

log4j日志

目录 pom中的依赖 log4j.properties 在mybatis配置文件中 pom中的依赖 <dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency> log4j.properties #将等级为DEBUG…

IP劫持的危害及应对策略

随着互联网的发展&#xff0c;网络安全问题日益凸显&#xff0c;其中IP劫持作为一种常见的网络攻击手段&#xff0c;对个人和企业的信息安全造成了严重的威胁。IP数据云将分析IP劫持的危害&#xff0c;并提出相应的应对策略。 IP地址查询&#xff1a;IP数据云 - 免费IP地址查询…

酷开科技OTT大屏差异化运营,提升每一个家庭成员的幸福感

近些年来&#xff0c;伴随着人工智能以及大数据的技术提升&#xff0c;营销领域也不断的更迭。酷开科技先后接受来自爱奇艺、腾讯、百度的投资入股&#xff0c;将大屏领域这个庞大的市场需求撬动了起来&#xff0c;以科技为助力&#xff0c;秉承开放共享、合作共赢的理念&#…

centos7中python3.10找不到openssl解决方案

如果有用其他方法安装了其他版本openssl&#xff0c;记得卸载其他的openssl&#xff0c;删除其他的openssl相关文件。 yum remove openssl* rm -rf ***下载最新版的openssl文件 按照官网安装方法安装openssl 官方安装地址https://docs.python.org/3/using/unix.html#on-linu…

建筑外窗遮阳系数测试的太阳光模拟器

太阳光模拟器是一种用于测试建筑外窗遮阳系数的高科技设备。它能够模拟太阳光照射房屋的情景&#xff0c;帮助建筑师和设计师更好地了解建筑外窗的遮阳性能&#xff0c;从而提高建筑的能源效率和舒适度。 这种模拟器的工作原理非常简单&#xff0c;它通过使用高亮度的光源和精…

【go语言开发】gorm库连接和操作mysql,实现一个简单的用户注册和登录

本文主要介绍使用gorm库连接和操作mysql&#xff0c;首先安装gorm和mysql依赖库&#xff1b;然后初始化mysql&#xff0c;配置连接池等基本信息&#xff1b;然后建表、完成dao、controller开发&#xff1b;最后在swagger中测试 文章目录 前言安装依赖库数据库初始化账号注册和登…

Maya笔记 软选择

文章目录 1什么是软选择2注意3如何打开软选择3.1方法一3.2方法二 4调整软选择的范围5衰减模式5.1体积模式5.2表面模式 6衰减曲线 1什么是软选择 也就是渐变选择&#xff0c;从中心点向外影响力度越来越小 软选择针对的是点线面这些模型元素 下图中展示了对被软选择的区域移动…

答题pk小程序源码技术大解析

答题pk小程序源码解析 在数字化时代&#xff0c;小程序因其便捷性、即用性而受到广泛欢迎。其中&#xff0c;答题pk小程序更是成为了一种寓教于乐的现象。它不仅为用户提供了趣味性的知识竞技平台&#xff0c;还为企业、教育机构等提供了互动营销和知识传播的新途径。本文将对…

通过勒索病毒攻击案例,思考勒索病毒攻击现象与趋势

前言 2019年针对企业的勒索病毒攻击越来越多&#xff0c;仿佛全球都在被勒索&#xff0c;基本上每天都会有关于勒索病毒攻击的案例被曝光&#xff0c;勒索病毒攻击已经成为全球最大的网络安全威胁&#xff0c;同时也被国际刑警组织认定为全球危害最大的网络犯罪组织活动&#…

STM32各外设初始化步骤

1、GPIO初始化步骤 1、使能GPIO时钟 2、初始化GPIO的输入/输出模式 3、设置GPIO的输出值或获取GPIO的输入值 GPIO_InitTypeDef GPIO_InitStruct;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);GPIO_InitStruct.GPIO_Mode GPIO_Mode_Out_PP; GPIO_InitStruct.GPIO_Pin…

【前端系列】vue

这里写目录标题 一、Vue简介1.1 主流前端框架/库简介 二、下载和安装Vue2.1 下载2.2 安装完成后&#xff0c;检查2.3创建全局安装目录和缓存日志目录2.4 为了下载包快速&#xff0c;改源为淘宝镜像2.5 查看npm配置修改是否成功 三、配置环境变量环境变量—用户变量—选中Path—…

基于逻辑回归实现乳腺癌预测(机械学习与大数据)

基于逻辑回归实现乳腺癌预测 将乳腺癌数据集拆分成训练集和测试集&#xff0c;搭建一个逻辑回归模型&#xff0c;对训练集进行训练&#xff0c;然后分别对训练集和测试集进行预测。输出以下结果&#xff1a; 该模型在训练集上的准确率&#xff0c;在测试集上的准确率、召回率和…

实践航拍小目标检测,基于YOLOv7【tiny/l/x】不同系列参数模型开发构建无人机航拍场景下的小目标检测识别分析系统

关于无人机相关的场景在我们之前的博文也有一些比较早期的实践&#xff0c;感兴趣的话可以自行移步阅读即可&#xff1a; 《deepLabV3Plus实现无人机航拍目标分割识别系统》 《基于目标检测的无人机航拍场景下小目标检测实践》 《助力环保河道水质监测&#xff0c;基于yolov…

剑指offer 二维数组中的查找 C++

目录 前言 一、题目 二、解题思路 1.直接查找 2.二分法 三、输出结果 前言 最近在牛客网刷题&#xff0c;刷到二维数组的查找&#xff0c;在这里记录一下做题过程 一、题目 描述 在一个二维数组中&#xff08;每个一维数组的长度相同&#xff09;&#xff0c;每一行都按照…

Android 日志原理解析

一、Logcat 二、Dumpsys C:\Users\pengcheng.ding>adb shell dumpsys --help usage: dumpsysTo dump all services. or:dumpsys [-t TIMEOUT] [--priority LEVEL] [--clients] [--dump] [--pid] [--thread] [--help | -l | --skip SERVICES | SERVICE [ARGS]]--help: show…

[嵌入式系统-37]:龙芯1B 开发学习套件 -6-协处理器CP0之CPU异常处理与外部中断控制器的中断处理

目录 一、CP0概述 1.1 CP0概述 1.2 龙芯异常exception与中断interrupt的区别 二、CPU协处理器的异常处理 三、外部中断与外部中断控制器 3.1 外部中断源 3.2 如何配置外部中断源 3.3 外部中断的中断向量表 3.2.1 软件中断向量表结构定义&#xff1a;ls1b_irq.c 3.2.2…

将ppt里的视频导出来

将ppt的后缀从pptx改为zip 找到【media】里面有存放图片和音频以及视频&#xff0c;看文件名后缀可以找到&#xff0c;mp4的即为视频&#xff0c;直接复制粘贴到桌面即可。 关闭压缩软件把ppt后缀改回&#xff0c;不影响ppt正常使用。

C++对象模型剖析(六)一一Data语义学(三)

Data 语义学&#xff08;三&#xff09; “继承” 与 Data member 上期的这个继承的模块我们还剩下一个虚拟继承&#xff08;virtual inheritance&#xff09;没有讲&#xff0c;现在我们就来看看吧。 虚拟继承&#xff08;Virtual Inheritance&#xff09; 虚拟继承本质就是…

leetcode 3.6

Leetcode hot 100 一.矩阵1.旋转图像 二.链表1. 相交链表2.反转链表3.回文链表4.环形链表5.环形链表 II 一.矩阵 1.旋转图像 旋转图像 观察规律可得&#xff1a; matrix[i][j] 最终会被交换到 matrix [j][n−i−1]位置&#xff0c;最初思路是直接上三角交换&#xff0c;但是会…

SpringCloud(20)之Skywalking Agent原理剖析

一、Agent原理剖析 使用Skywalking的时候&#xff0c;并没有修改程序中任何一行 Java 代码&#xff0c;这里便使用到了 Java Agent 技术&#xff0c;我 们接下来展开对Java Agent 技术的学习。 1.1 Java Agent Java Agent 是从 JDK1.5 开始引入的&#xff0c;算是一个比较老的…