好多网友对@Scheduled cron表达式含义做了阐述,个人认为很多对于 * ?的说明不够具体也不算准确,借此本文特别对 * ?做一下说明。

cron格式:【秒数】【分钟】【小时】【日期】【月份】【星期几】【年份(可省略)】

关于【日期】与【星期几】的说明:

1、【日期】与【星期几】两者为互斥的,不能同时设置。这个比较容易理解,假设日期设置为1,星期几也设置为1,那含义是什么:每月1日且为周一时触发,可能一年之中没用任何天能满足上述条件,更重要的是什么人能有这种xx的需求呢?

2、【日期】与【星期几】中任何一个设置值(包含 *),另一个必需使用 ?来进行屏蔽,此时 ?起到屏蔽的作用。

3、?只能出现在【日期】与【星期几】中,且不能同时出现

常用表达式符号说明:

* 表示任意值都满足触发条件

,表示列表项目的分割,如 秒数中设置 1,3,17,则表示秒数为1,3,17时满足触发条件

-表示连续的列表范围,如 秒数中设置 1-5,则表示秒数为1到5时,均满足触发条件

/正常的用法为 x/y,x表示触发的起始数值,y表示后续间隔,如 秒数中设置 5/20,则表示从第5秒开始触发,然后每隔20秒再循环触发(25、45,下次循环5、25、45.........)

表达式分析:
10 * * * * ? 每10秒触发任务
10 10 * * * ? 每小时的10分10秒触发任务
10 10 1 * * ? 每天1点10分10秒触发任务
0 0 10,14,18 * * ? 每天10、14、18点触发任务
0 0/20 9-17 * * ? 每天9-17点,20分钟触发任务
0 * 12 * * ? 每天12:00-12:59期间的每1分钟触发
0 0/3 12 * * ? 在每天12:00-12:59期间的每3分钟触发
0 0-5 12 * * ? 在每天12:00-12:05期间的每1分钟触发

10 10 1 12 * ? 每月12号1点10分10秒触发任务
10 10 1 ? * 2 每周1的1点10分10秒触发任务

10 10 1 20 10 ? 2021 2021年10月20号1点10分10秒触发任务
10 10 1 * 10 ? 2021 2021年10月每天1点10分10秒触发任务
10 10 1 ? 10 * 2021 2021年10月每天1点10分10秒触发任务
10 10 1 ? 10 7 2021 2021年10月每周6 1点10分10秒触发任务
 

@Scheduled cron 定时任务表达式含义,及* ?的区别的更多相关文章

  1. Cron 定时任务表达式

    Cron Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: Seconds Minutes Hours DayofMonth M ...

  2. Spring 定时任务之 @Scheduled cron表达式

    一个基于Spring boot的一个demo: Java配置中开户对Scheduled的支持 import org.springframework.context.annotation.Configu ...

  3. @Scheduled执行定时任务与cron表达式

    1 配置文件形式执行定时任务 1 1.X 版本与spring结合使用实例 1.1 常用maven管理 pom.xml文件 <project xmlns="http://maven.ap ...

  4. @Scheduled(cron = "0 0 * * * ?")实现定时任务

    //每一个小时执行一次 @Scheduled(cron = "0 0 * * * ?") public void saveDailyScoreScheduled() { try { ...

  5. @Scheduled cron表达式

    一.Cron详解: Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: 1.Seconds Minutes Hours Dayof ...

  6. Spring boot @Scheduled(cron = "* * * * * *") cron表达式详解

    //@Scheduled(cron = "0 0/15 * * * ?") //每15分钟触发一次 //@Scheduled(cron = "5/10 * * * * ? ...

  7. Spring @SCHEDULED(CRON = "0 0 * * * ?")实现定时任务

    Spring配置文件xmlns加入 xmlns:task="http://www.springframework.org/schema/task" xsi:schemaLocati ...

  8. Spring 计时器 @Scheduled cron 含义

    Spring 计时器 @Scheduled cron 含义 学习:http://blog.csdn.net/prisonbreak_/article/details/49180307 http://b ...

  9. Spring的定时任务@Scheduled(cron = "0 0 1 * * *")

    指定某个方法在特定时间执行,如: cron="0 0 1 1 * ?" 即这个方法每月1号凌晨1点执行一次 关于这个注解的解释网上一大堆 但是今天遇到个问题,明明加了注解@Sche ...

  10. 使用Spring的@Scheduled实现定时任务

    Spring配置文件xmlns加入xmlns:task="http://www.springframework.org/schema/task"xsi:schemaLocation ...

随机推荐

  1. Android 使用 ContentProvider 简单操作数据库

    ContentProvider 可以用来原生读写 Android 自带的数据库 SQLite. 使用 Studio 创建一个 ContentProvider, 名字叫 TestContentProvi ...

  2. 关于点赞业务对MySQL和Redis和MongoDB的思考

    点赞 ​ 在我个人理解中,点赞业务比较频繁,很多人业务可能都会有这个,比如:博客,视频,文章,动态,评论等,但是不应该是核心业务,不应该大量地请求MySQL数据库,给数据库造成大量的资源消耗,MySQ ...

  3. mysql 安装避坑指南 ,mysql 安装后不能启动, mysql 指定版本安装,mysql 5.7.39版本安装,mysql 5.7.36版本安装

    mysql 安装后不能启动,报错如下:请参照本说明第7条的办法解决.mysqld.service: Control process exited, code=exited status=1Please ...

  4. Opencv学习笔记(1)

    1.安装环境 如何安装Python解释器和PyCharm,这里就不说明了, 参考文章链接:https://blog.csdn.net/weixin_72959097/article/details/1 ...

  5. Centos8离线安装golang

    一.下载golang 1.下载安装包 2.下载后解压. tar -zxvf go1.17.linux-amd64.tar.gz 二.配置环境变量 vim /etc/profile 1.在环境变量最后添 ...

  6. 如何收集pod重启前现场

    之前分享过几篇优化pod重启的文章,有朋友发私信问:看你的优化文章很过瘾,可否分享下如何收集pod重启前的现场. 案例分享-full gc导致k8s pod重启 记一次k8s pod频繁重启的优化之旅 ...

  7. 基于DotNetty实现自动发布 - 项目的配置与发现

    前言 上一篇,我们实现了基于 DotNetty 的通信基础模块的搭建,本篇,主要实现待发布 Web 项目的集成. 创建待发布项目 为了测试, 我创建了一个基于 .NET 4.8 的 Web 项目 Op ...

  8. [ABC261E] Many Operations

    Problem Statement We have a variable \(X\) and \(N\) kinds of operations that change the value of \( ...

  9. GoFrame Goland插件

    前言 GoFrame 是一款模块化.高性能.企业级的 Go 基础开发框架.GoFrame 是一款通用性的基础开发框架,是 Golang 标准库的一个增强扩展级,包含通用核心的基础开发组件,优点是实战化 ...

  10. bash shell笔记整理——ls命令

    语法: ls [选项] [文件 或 目录] 选项 使用说明 –a 显示指定目录下的所有文件,包括隐藏文件. -A 显示除了.和..的外的所有文件. -l 显示详细的文件信息. -d 如果是目录,只显示 ...