SpringBoot通过@Scheduled实现定时任务

Spring自带的定时任务系统,使用注解时必须指定任意一个参数(属性):cron、fixedDelay或fixedRate;

1. 启动类添加开启注解

@EnableScheduling

2. cron参数

/**
* cron 一共可以有7个参数 以空格分开 其中年不是必须参数
* [秒] [分] [小时] [日] [月] [周] [年]
*/
@Scheduled(cron ="0 0 0 * * * ?")
public void testScheduledCron(){
}

序号参数取值范围特殊字符
1[0, 59]* , - /
2分钟[0, 59]* , - /
3小时[0, 23]* , - /
4日期[1, 31]* , - / ? L W
5[1, 12]或[JAN, DEC]* , - /
6星期[1,7]或[MON, SUN]* , - / ? L #

常用通配符:

序号特殊字符描述样例
1*所有可能的值如在分钟的位置配置*,表示每一分钟都生效
2,枚举值表示对应的数据,如分钟位置配置10,20,30,表示在某点的10分、20分和30分执行
3-范围间隔值1,左右的数据表示上界和下界,如分钟位置配置:10-20,表示某点10分和20分之间,每1分钟执行
4/增量左侧数据表示起始值,右侧数据表示增量,分钟位置配置:3/10,表示从第一个间隔3分钟后,每10分钟执行,秒位置:2/10,表示从第一个2秒后开始,每10秒执行
5?不指定在日期或星期中使用,为避免冲突,将另一个位置配置?
6LLast,最后一个日期位置使用L表示最后一天,星期位置使用L表示最后一个星期的最后一天
7W除周末以外的有效工作日日期位置就近原则,如果5W,5日在为星期六,则在4日执行,如果5日是星期日,则在星期一执行,如果5日在周一~周五,则在5日当天执行
8#确定每个月第几个星期几,仅支持星期星期位置,4#2表示某月的第二个星期四

示例:

每天凌晨零点执行

@Scheduled(cron ="0 0 0 * * * ?")

每隔五分钟执行

@Scheduled(cron ="0 */5 0 * * * ?")
cron描述
0/5 * * * * ?每5秒执行一次
0 0/2 * * * ?每两分钟执行一次
0 2 3 1 * ?每月1日3点2分执行一次
0 2 3 1 1-3 ?1月到3月的:1日3点2分执行一次
0 0 2,3,4,5 * * ?每天2点、3点、4点和5点执行一次
0 10 2 * * ?每天2:10分执行一次
0 0-5 14,16 * * ?每天14:00到14:55和16:00到16:55每5分钟执行一次
0 10 10 L * ?每月最后一天的10:10执行一次
0 10 10 5W * ?每月的工作日5日10:10分执行,如果5日为周六,则往前退一天(星期五),4日10:10执行,如果5日为星期日,则往后推一天(星期一),6日10:10日执行
0 10 10 ?* 4#2每月的第二个星期四10:10执行一次

0/2 * * * * ?   表示每2秒 执行任务

0 0/2 * * * ?    表示每2分钟 执行任务

0 0 2 1 * ?   表示在每月的1日的凌晨2点调整任务

0 15 10 ? * MON-FRI   表示周一到周五每天上午10:15执行作业

0 15 10 ? 6L 2002-2006   表示2002-2006年的每个月的最后一个星期五上午10:15执行作

0 0 10,14,16 * * ?   每天上午10点,下午2点,4点 

0 0/30 9-17 * * ?   朝九晚五工作时间内每半小时 

0 0 12 ? * WED    表示每个星期三中午12点 

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 * * ?     在每天下午2点到下午2:59期间的每1分钟触发 

0 0/5 14 * * ?    在每天下午2点到下午2:55期间的每5分钟触发 

0 0/5 14,18 * * ?     在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发 

0 0-5 14 * * ?    在每天下午2点到下午2:05期间的每1分钟触发 

0 10,44 14 ? 3 WED    每年三月的星期三的下午2:10和2: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触发

 在线生成cron:在线Cron表达式生成器 (qqe2.com)

3. zone参数

zone能够指定获取的时区,默认是空,表示使用服务器所在时区,比如Asia/BeiJingi或者Asia/Shanghai。

4. fixedDelay参数

fixedDelay表示上次调用结束后与下次调用之间的固定时间,单位是毫秒。

 @Scheduled(fixedDelay= 3000) //表示距离上次调用结束后三秒再执行

5. fixedDelayString参数

与fixedDelay是几乎一样的,唯一的差异是fixedDelayString是支持占位符的。

 6. fixedRate

fixedRate表示多久执行一次,单位是毫秒。与cron的/通配符用法相似;

 @Scheduled(fixedRate= 3000) // 表示每三秒执行一次

7. fixedRateString 

相比fixedRate支持占位符

8. initialDelay

表示第一次延迟多少毫秒执行,单位是毫秒

@Scheduled(initialDelay= 3000)

表示第一次执行时,延迟3秒执行

9. initialDelayString

initialDelay的升级,支持占位符。

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

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

相关文章

java项目之品牌银饰售卖平台(ssm+vue)

项目简介 主要功能包括首页、个人中心、用户管理、促销活动管理、饰品管理、我的收藏管理、系统管理、订单管理等。管理员模块: 管理员可以查询、编辑、管理每个用户的信息和系统管理员自己的信息,同时还可以编辑、修改、查询用户账户和密码,以及对系统…

EMG肌肉电信号处理合集(三)

本文主要展示常见的肌电信号预处理的实现,开发环境为matlab。 目录 1 肌电信号低通,高通,带通滤波 2 去除DC 0阶偏置,1阶偏置 3 全波整流 4 信号降采样 5 linear envolope / butterworth 低通滤波器 1 肌电信号低通&#xf…

pdf.js插件怎么控制工具栏的显示与隐藏

最近做了一个需求,需要实现pdf文件的预览,但是只是提供预览功能,不需要展示相关的工具栏,所以需要把工具栏隐藏掉。我用的插件是pdf.js 官网地址:http://mozilla.github.io/pdf.js/ 中文文档地址:https://…

邻趣连接力:如何无代码集成CRM、电商平台和营销系统,提升广告推广效率

连接即服务:邻趣无代码集成方法 传统的电商系统集成过程需要大量的时间和资源进行API开发,这不仅耗时耗力,还需要专业的技术团队支持。然而,邻趣通过提供一种无需API开发的连接方法,极大地简化了整个集成过程。商家只…

vue3 滚动条回到顶部

需求&#xff1a; 在页面a&#xff0c;滑动了滚动条&#xff0c;再进入页面b&#xff0c;但是页面B记录了滚动条位置 现在想要&#xff0c;进入页面B,不记录之前的滚动条&#xff0c; 代码 //页面B <div class"center" ref"centerRef">页面B </…

信号...

信号的产生&#xff1a;外卖小哥给我打电话说你外卖到了 信号的保存&#xff1a;我可能正在推高地&#xff0c;脑子里面记住我外卖到了&#xff0c;一会再去拿 信号的处理&#xff1a;我打完了&#xff0c;下楼把外卖拿了 完成了一次信号的生命周期

VSDX Annotator v1.16.1(Visio 绘图注释工具)

VSDX Annotator是一款在Mac上操作MSVisio绘图的工具&#xff0c;提供了广泛的注释可能性&#xff0c;以及在多平台环境中共享可视文档。它确保共有12个注释工具&#xff0c;并允许添加注释、标注、注释、块、图形文件等。该应用程序允许用户在Mac上查看Visio流程图、图表、方案…

Cartographer实现双雷达建图

Urdf修改 <?xml version="1.0" ?> <robot name="robot"><link name="base_link" /><link name="laser_1" /><link name="laser_2" /><link name="laser_link" /><join…

13.什么是Spring beans?

什么是Spring beans&#xff1f; Spring 官方文档对 bean 的解释是&#xff1a; In Spring, the objects that form the backbone of your application and that are managed by the Spring IoC container are called beans. A bean is an object that is instantiated, assem…

大数据-计算框架选型与对比

计算框架选型与对比 一、大数据平台二、计算框架分类1.批处理架构2.实时流处理架构3.流批一体处理架构 三、计算框架关键指标1.处理模式2.可伸缩性3.消息传递3.1 至少一次&#xff08;at least once&#xff09;3.2 至多一次&#xff08;ai most once&#xff09;3.3 恰好一次&…

边海防可视化智能视频监控与AI监管方案,助力边海防线建设

一、背景与需求 我国有3万多公里的边境线和海岸线&#xff0c;随着我国边海防基础设施建设的快速发展&#xff0c;边海安防也逐渐走向智能化。传统人工巡防的方式已经无法满足边海智能化监管的需求&#xff0c;在沿海、沿边地区进行边海智慧安防视频监控系统等边海防基础设施建…

智慧海岛/海域方案:助力海洋空间智慧化、可视化管理

随着我国海洋经济的快速发展&#xff0c;海域海岛的安防技术也获得了进步。传统的安防监控模式已经满足不了海域海岛的远程监管需求。伴随着人工智能、边缘计算、大数据、通信传输技术、视频技术、物联网等信息化技术的发展&#xff0c;海岛海域在监管手段上&#xff0c;也迎来…

【Spring Cloud实战】分布式系统控制与组件应用

在现代软件开发中&#xff0c;分布式系统已经成为一种常见的架构模式&#xff0c;被广泛应用于各种规模的企业和组织中。这种架构模式通过将应用程序拆分为独立的组件&#xff0c;并分布在不同的计算机节点上运行&#xff0c;使得系统能够应对高负载和大规模的数据处理需求&…

python tkinter使用(四)

本篇文章主要讲下tkinter 的文本框相关. tkinter中用Entry来实现输入框,类似于android中的edittext. 具体的用法如下: 1:空白输入框 如下: name tk.Entry(window) name.pack()2: 设置输入框的默认文案 name tk.Entry(window) name.pack() name.insert(tk.END, "请…

使用支付宝的沙箱环境在本地配置模拟支付并发布至公网调试

文章目录 前言1. 下载当面付demo2. 修改配置文件3. 打包成web服务4. 局域网测试5. 内网穿透6. 测试公网访问7. 配置二级子域名8. 测试使用固定二级子域名访问9. 结语 前言 在沙箱环境调试支付SDK的时候&#xff0c;往往沙箱环境部署在本地&#xff0c;局限性大&#xff0c;在沙…

vue .prop修饰符

一、官网概念 .prop - 强制绑定为 DOM property 原本自定义属性默认会绑定在DOM的attributes上&#xff0c;加上prop之后会绑定在property&#xff0c;attributes上就不存在咯 在页面上的一个明显区别就是&#xff1a;不加prop时&#xff0c;DOM渲染后自定义属性和值都是暴露在…

自定义label组件

自定义label组件 支持边框绘制 支持shape背景(按指定圆角裁剪,矩形,圆角矩,圆形),支持指定角圆角 支持自定义阴影(颜色,偏移,深度) 边框颜色支持状态选择器 预览 核心绘制辅助类 public class LabelHelper {private final Paint paint;private Paint shadowPaint;private fina…

【无标题】学习HTML

由于工作需求&#xff0c;学习了一些html的相关知识&#xff0c;最终应用到打印功能上使用。 HTML是指超文本标记语言&#xff08;HyperText Markup Language&#xff09;。它是一种用于创建和呈现互联网上页面的标准标记语言。HTML是Web开发的基础&#xff0c;是构建网页和应…

宅家追剧神器推荐,高亮轻薄投影仪极米Z7X带你开启追剧新体验

周末假期怎么玩&#xff1f;相信有不少朋友已经准备好了出游计划&#xff0c;当然也有很多小伙伴想趁周末在家追追剧、看看电影、玩玩游戏放松一下。那么&#xff0c;今天笔者就给大家带来了一款假期娱乐神器——极米Z7X&#xff0c;无论是出游还是宅家追剧&#xff0c;极米Z7X…

深度解析 Docker Registry:构建安全高效的私有镜像仓库

文章目录 什么是Docker Registry&#xff1f;Docker Hub vs. 私有RegistryDocker Hub&#xff1a;私有Registry&#xff1a; 如何构建私有Docker Registry&#xff1f;步骤一&#xff1a;安装Docker Registry步骤二&#xff1a;配置TLS&#xff08;可选&#xff09;步骤三&…