Cron

Cron
Silence前言
在课上学的感觉挺有用的,之前没有学习过。记录一下万一后面需要了,方便快速回顾
Cron表达式的概述
Cron表达式是一种强大的用于配置定时任务的时间表达式。它由若干个时间字段组成每个字段代表时间的一个特定部分。Cron表达式通常用于操作系统的定时任务调度,以及各种编程语言中的定时任务库。
在实际应用中,Cron表达式可以用于配置数据库备份、系统维护任务、定时发送邮件自动化测试等。
Cron表达式的组成
一个标准的Cron表达式由以下七个时间字段组成,字段之间以空格分隔:
秒(0-59)
分钟 (0-59)
小时(0-23)
月份中的日期(1-31)
月份(1-12)
星期中的日期(0-6或1-7,其中0或7代表星期天)
年份(1970-2099)
特殊字符及其含义
Cron表达式中可以使用一些特殊字符来表示更复杂的时间规则:
*
:匹配任意值
?:在月份中的日期和星期中的日期字段中,表示无特定的值,用于与其他字段组合使用。
- :表示一个范围,如5-20表示5到20。
/ :表示起始时间开始,然后每
隔固定时间,如5/20表示从5开始,每20分钟。
,:用于枚举,如1,5,10表示1日,5日,和10日
L :表示最后,只能在星期中的日期和月份中的日期字段中使用
W :表示有效工作日,只能在月份中的日期字段中使用
LW :连用表示某月最后一个工作日
#
:用于确定每个月的第几个星期几,只能在星期中的日期字段中使用
Cron表达式示例
以下是一些Cron表达式的例子及其含义:
0 0 1 3 * ? : 每月的3日的1点整触发
0 15 10 * * ? : 每天的10点15分触发
0 0/5 14 * * ? : 每天的下午2点到下午2点55分之间,每5分钟触发一次。
0 0 10 , 14 , 16 * * ? : 每天的10点、14点、16点触发一次。
0 0,15,30,45 * 1-10 * ? : 每个月前10天每隔15分钟触发一次。
30 0 0 11 ? 2012 : 在2012年1月1日午夜过 30秒的时候触发。
Cron表达式生成器
反正我不想自己老老实实的写,直接去生成器生成就行了
https://www.bejson.com/othertools/cron/
SpringTask 使用方式
- 导入maven坐标spring-context(已存在)
- 启动类添加注解@EnableScheduling开启任务调度
- 自定义定时任务类
举个例子:
每隔五秒触发一次
1 |
|