定时器@Scheduled使用

四种调度方法

@Scheduled 是 Spring Boot 中用于创建定时任务的注解。使用此注解可以很方便地实现定时任务的自动调度。以下是常见四种参数的作用:

  1. 固定延迟(Fixed Delay):

    • @Scheduled(fixedDelay = 1000):在上一个任务完成后,等待1000毫秒(1秒)开始下一个任务。
  2. 固定速率(Fixed Rate):

    • @Scheduled(fixedRate = 1000):每1000毫秒(1秒)执行一次任务,不考虑上一个任务的执行时间。
  3. 初始延迟(Initial Delay):

    • @Scheduled(initialDelay = 1000, fixedRate = 5000):应用启动后等待1000毫秒(1秒)开始执行第一个任务,之后每5000毫秒(5秒)执行一次。
  4. Cron 表达式:

    • @Scheduled(cron = "0 * * * * ?"):使用Cron表达式来定义任务的执行时间。这个例子中,任务将在每分钟的开始时刻执行。

定时器使用

为了使用 @Scheduled,需要在 Spring Boot 应用的主类或配置类上添加 @EnableScheduling 注解,以启用定时任务的调度功能。例如:

@SpringBootApplication
@EnableScheduling
public class MyApplication {
    // 启动类代码
}

在Spring Boot应用中,只需要在一个地方添加@EnableScheduling注解,通常是在主启动类(即包含@SpringBootApplication注解的类)上添加。这样做会在整个Spring应用上下文中启用定时任务的调度。

然后,你可以在任何Spring管理的Bean中使用 @Scheduled 注解来定义一个定时任务。例如:

@Component
public class ScheduledTasks {

    @Scheduled(fixedRate = 5000)
    public void reportCurrentTime() {
        System.out.println("当前时间:" + LocalDateTime.now());
    }
}

Cron详解

Cron 表达式是一种用于配置定时任务的字符串,它定义了任务应该在何时运行。Cron 表达式通常由六或七个部分组成,每个部分用空格分隔。这些部分表示不同的时间单位,如下所示:

  1. (0-59)
  2. 分钟 (0-59)
  3. 小时 (0-23)
  4. 日期 (1-31)
  5. 月份 (1-12 或 JAN-DEC)
  6. 星期 (0-7,其中 0 和 7 都代表星期日,或者用 SUN-SAT)
  7. 年份 (可选字段,通常留空)

每个部分可以包含一个数值、一个范围、一个列表或一个特殊字符。以下是一些特殊字符及其含义:

  • *:任意值,用于表示该字段的每个可能的值。
  • -:表示一个范围,例如 10-12 在小时字段中代表10点到12点。
  • ,:用于列举多个值,例如 MON,WED,FRI 在星期字段中代表星期一、星期三和星期五。
  • /:用于指定增量,例如 0/15 在分钟字段中代表每小时的0分、15分、30分和45分。
  • ?:用在日期和星期字段中,表示“没有特定的值”,通常用于其中一个字段为具体值时,另一个字段设为 ?

------------------------------------------与正文内容无关------------------------------------
如果觉的文章写对各位读者老爷们有帮助的话,麻烦点赞加关注呗!小弟在这拜谢了!
如果您觉得我的文章在某些地方写的不尽人意或者写的不对,从而让你对你人生观产生颠覆(概不负责),需要斧正,麻烦在评论区不吝赐教,作者看到后会根据您的提示查阅文章进行修改,还这世间一个公理一片蓝天

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

UG装配-动画制作

制作装配动画用到的命令是序列 制作动画前,先将所有约束取消 当我们在装配导航器中装配好产品后,可以在序列中编辑生产动态装配或爆炸动画; 需要注意的是,如果是希望创建装配或爆炸动画,需要先将所有约束取消&#…

关于整形提升

个人主页:Lei宝啊 愿所有美好如期而遇 什么是整型提升? 在C语言的整型算数运算总是至少以int类型来进行的,当表达式中有char,byte,short类型的操作数时,他们在被使用前需要被转换成int类型,…

Presto CLI学习

1. 序言 作为Presto的客户端之一,Presto CLI是一个基于终端的交互式shell,对应presto源码中的presto-cli模块 Presto CLI的本质是一个self-executing jar —— presto-cli-version-executable.jar,就像一个普通的UNIX可执行文件 因此&#…

力扣383.赎金信 -- 哈希表

思路&#xff1a;记录magazine每个字符个数&#xff0c;然后记录ransomNote每个字符&#xff08;每有一个减1&#xff09;&#xff0c;假如出现<0的情况说明ransomnode有字符的个数超过了magazine则无法构成&#xff0c;否则可以构成 代码&#xff1a; class Solution { pu…

HCIA-Datacom题库(自己整理分类的)_11_其他网络协议单选【9道题】

1.DNS协议的主要作用是&#xff1f; 文件传输 远程接入 域名解析 邮件传输 2.下列属于链路状态协议的是? Direct static FTP OSPF 解析&#xff1a; FTP&#xff1a;文件传输协议 OSPF&#xff1a;链路状态路由协议 3.如下图所示的网络主机A通过Telnet登录到路由…

1_工程设计模式-简单工厂设计

工程设计模式 一.简单工程设计模式 1.概念 简单工厂模式( Simple Factory Pattern )是指由一个工厂对象决定创建出哪一种产品类的实例。 但它不属于 GOF 23 种设计模式。简单工厂适用于工厂类负责创建的对象较少的场景&#xff0c;且客户端只需要传入工厂类的参数&#xff…

2023年度总结:技术沉淀、持续学习

2023年度总结&#xff1a;技术沉淀、持续学习 一、引言 今年是我毕业的第二个年头&#xff0c;也是完整的一年&#xff0c;到了做年终总结的时候了 这一年谈了女朋友&#xff0c;学习了不少技术&#xff0c;是充实且美好的一年&#xff01; 首先先看年初定的小目标&#xf…

ARTrack 阅读记录

目录 环境配置与脚本编写 前向传播过程 网络结构 环境配置与脚本编写 按照官网执行并没有顺利完成&#xff0c;将yaml文件中的 pip 项 手动安装的 conda create -n artrack python3.9 # 启动该环境&#xff0c;并跳转到项目主目录路径下 astor0.8.1 configparser5.2.0 data…

ssm基于HTML5的交流论坛的设计与实现+vue论文

摘 要 信息数据从传统到当代&#xff0c;是一直在变革当中&#xff0c;突如其来的互联网让传统的信息管理看到了革命性的曙光&#xff0c;因为传统信息管理从时效性&#xff0c;还是安全性&#xff0c;还是可操作性等各个方面来讲&#xff0c;遇到了互联网时代才发现能补上自古…

一文掌握文本语义分割:从朴素切分、Cross-Segment到阿里SeqModel

前言 之所以写本文&#xff0c;源于以下两点 在此文《基于LangChainLLM的本地知识库问答&#xff1a;从企业单文档问答到批量文档问答》的3.5节中&#xff0c;我们曾分析过langchain-chatchat项目中文本分割相关的代码&#xff0c;当时曾提到该项目中的文档语义分割模型为达摩…

56K star!一键拥有跨平台 ChatGPT 应用:ChatGPT-Next-Web

前言 现在围绕 openai 的客户端层出不穷&#xff0c;各路开发大神可以说是各出绝招&#xff0c;我也试用过几个国内外的不同客户端。 今天我们推荐的开源项目是目前我用过最好的ChatGPT应用&#xff0c;在GitHub超过56K Star的开源项目&#xff1a;ChatGPT-Next-Web。 ChatGP…

【计算机组成原理】通过带符号整数的减法运算中加法器的溢出标志 OF 和符号标志 SF 对两个带符号整数的大小进行比较

对于带符号整数的减法运算&#xff0c;能否直接根据 CF 的值对两个带符号整数的大小进行比较&#xff1f; 对于带符号整数的减法运算&#xff0c;不能直接根据CF&#xff08;进/借位标志&#xff09;的值对两个带符号整数的大小进行比较。 CF标志位在带符号整数运算中主要用于…

Java最大优先队列设计与实现

Java 学习面试指南&#xff1a;https://javaxiaobear.cn 1、API设计 类名MaxPriorityQueue构造方法MaxPriorityQueue(int capacity)&#xff1a;创建容量为capacity的MaxPriorityQueue对象成员方法private boolean less(int i,int j)&#xff1a;判断堆中索引i处的元素是否小…

二叉树算法题(一)

根据二叉树创建字符串 根据二叉树创建字符串 给你二叉树的根节点 root &#xff0c;请你采用前序遍历的方式&#xff0c;将二叉树转化为一个由括号和整数组成的字符串&#xff0c;返回构造出的字符串。 空节点使用一对空括号对 "()" 表示&#xff0c;转化后需要省…

基于JSP+Servlet+Mysql的学生信息管理系统

基于JSPServletMysql的学生信息管理系统 一、系统介绍二、功能展示1.目录2.数据库3.登陆4.注册5.主页 四、其它1.其他系统实现五.获取源码 一、系统介绍 项目名称&#xff1a;基于JSPServletMysql的学生信息管理系统 项目架构&#xff1a;B/S架构 开发语言&#xff1a;Java语…

软件装一送三了!还附带弹窗资讯,你确定不试一下?

前言 前几天一个朋友向我吐槽&#xff0c;说电脑太卡了。自己好像都没安装什么软件&#xff0c;怎么就那么多弹窗广告。 我看了一下他的电脑&#xff0c;笑了一下说&#xff1a;你的电脑真好&#xff0c;都会只能给你推荐美女看&#xff0c;这资讯来之不易啊&#xff0c;好好享…

libexif库介绍

libexif是一个用于解析、编辑和保存EXIF数据的库。它支持EXIF 2.1标准(以及2.2中的大多数)中描述的所有EXIF标签。它是用纯C语言编写的&#xff0c;不需要任何额外的库。源码地址&#xff1a;https://github.com/libexif/libexif &#xff0c;最新发布版本为0.6.24&#xff0c;…

如何保障开放网络边界安全?

针对开放式网络&#xff08;办事大厅、视频网络等&#xff09;&#xff0c;如何在内部网络构建起一道安全屏障&#xff0c;有效解决广大用户普遍存在的无法保证网络边界完整、边界安全、公共场所终端摄像头管理、办事大厅智能设备&#xff08;一体机等&#xff09;管理、开放场…

【AI视野·今日CV 计算机视觉论文速览 第283期】Thu, 4 Jan 2024

AI视野今日CS.CV 计算机视觉论文速览 Thu, 4 Jan 2024 Totally 85 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Computer Vision Papers LEAP-VO: Long-term Effective Any Point Tracking for Visual Odometry Authors Weirong Chen, Le Chen, Rui Wang, Marc P…

信源编码与信道转移矩阵

目录 一. 信息论模型 二. 点对点通信模型 三. 信源编码 四. 信道转移矩阵 4.1 二进制对称信道 4.2 二进制擦除信道 五. 小结 &#xff08;1&#xff09;信道直射与反射 &#xff08;2&#xff09;信道散射 &#xff08;3&#xff09; 信道时变性 一. 信息论模型 194…
最新文章