国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

springboot---定時任務(wù)實現(xiàn)

這篇具有很好參考價值的文章主要介紹了springboot---定時任務(wù)實現(xiàn)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. scheduled注解實現(xiàn)

1.1. 用法

任意類中創(chuàng)建一個方法,將該方法用@scheduled注解修飾,然后在項目的主方法上添加@EnableScheduling注解,定時任務(wù)就會生效。
但是需要注意的是定時任務(wù)不會一開始就執(zhí)行,會等待設(shè)定的時間

1.2. 參數(shù)詳解

1.2.1. cron

cron表達式是一個字符串,字符串以5或6個空格隔開,分開共6或7個域,每一個域代表一個含義。
cron表達式語法:[秒] [分] [時] [日] [月] [周] [年]
注:[年]不是必須的域,可以省略[年],則一共6個域
springboot 定時任務(wù),spring boot,后端,java

通配符說明

  1. *表示所有值。 例如:在分的字段上設(shè)置 *,表示每一分鐘都會觸發(fā)。

  2. ? 表示不指定值。使用的場景為不需要關(guān)心當前設(shè)置這個字段的值。例如:要在每月的10號觸發(fā)一個操作,但不關(guān)心是周幾,所以需要周位置的那個字段設(shè)置為”?” 具體設(shè)置為 0 0 0 10 * ?

  3. -表示區(qū)間。例如 在小時上設(shè)置 “10-12”,表示 10,11,12點都會觸發(fā)。

  4. , 表示指定多個值,例如在周字段上設(shè)置 “MON,WED,FRI” 表示周一,周三和周五觸發(fā)

  5. / 用于遞增觸發(fā)。如在秒上面設(shè)置”5/15” 表示從5秒開始,每增15秒觸發(fā)(5,20,35,50)。 在日字段上設(shè)置’1/3’所示每月1號開始,每隔三天觸發(fā)一次。

  6. L 表示最后的意思。在日字段設(shè)置上,表示當月的最后一天(依據(jù)當前月份,如果是二月還會依據(jù)是否是潤年[leap]), 在周字段上表示星期六,相當于”7”或”SAT”。如果在”L”前加上數(shù)字,則表示該數(shù)據(jù)的最后一個。例如在周字段上設(shè)置”6L”這樣的格式,則表示“本月最后一個星期五”

  7. W 表示離指定日期的最近那個工作日(周一至周五). 例如在日字段上置”15W”,表示離每月15號最近的那個工作日觸發(fā)。如果15號正好是周六,則找最近的周五(14號)觸發(fā), 如果15號是周未,則找最近的下周一(16號)觸發(fā).如果15號正好在工作日(周一至周五),則就在該天觸發(fā)。如果指定格式為 “1W”,它則表示每月1號往后最近的工作日觸發(fā)。如果1號正是周六,則將在3號下周一觸發(fā)。(注,”W”前只能設(shè)置具體的數(shù)字,不允許區(qū)間”-“)。

  8. #序號(表示每月的第幾個周幾),例如在周字段上設(shè)置”6#3”表示在每月的第三個周六.注意如果指定”#5”,正好第五周沒有周六,則不會觸發(fā)該配置(用在母親節(jié)和父親節(jié)再合適不過了) ;小提示:’L’和 ‘W’可以一組合使用。如果在日字段上設(shè)置”LW”,則表示在本月的最后一個工作日觸發(fā);周字段的設(shè)置,若使用英文字母是不區(qū)分大小寫的,即MON與mon相同。

1.2.2. zone

時區(qū),接收一個java.util.TimeZone#ID。cron表達式會基于該時區(qū)解析。默認是一個空字符串,即取服務(wù)器所在地的時區(qū)。比如我們一般使用的時區(qū)Asia/Shanghai。該字段我們一般留空。

1.2.3. fixedDelay

上一次執(zhí)行完畢時間點之后多長時間再執(zhí)行。如:

@Scheduled(fixedDelay = 5000) //上一次執(zhí)行完畢時間點之后5秒再執(zhí)行

1.2.4. fixedDelayString

與 fixedDelay 意思相同,只是使用字符串的形式。唯一不同的是支持占位符。如:

@Scheduled(fixedDelayString = "5000") //上一次執(zhí)行完畢時間點之后5秒再執(zhí)行

占位符的使用(配置文件中有配置:time.fixedDelay=5000):

@Scheduled(fixedDelayString = "${time.fixedDelay}")
void testFixedDelayString() {
    System.out.println("Execute at " + System.currentTimeMillis());
}

運行結(jié)果:
springboot 定時任務(wù),spring boot,后端,java

1.2.5. fixedRate

上一次開始執(zhí)行時間點之后多長時間再執(zhí)行。如:

@Scheduled(fixedRate = 5000) //上一次開始執(zhí)行時間點之后5秒再執(zhí)行

1.2.6. fixedRateString

與 fixedRate 意思相同,只是使用字符串的形式。唯一不同的是支持占位符。

1.2.7. initialDelay

第一次延遲多長時間后再執(zhí)行。如:

@Scheduled(initialDelay=1000, fixedRate=5000) //第一次延遲1秒后執(zhí)行,之后按fixedRate的規(guī)則每5秒執(zhí)行一次

1.2.8. initialDelayString

與 initialDelayString 意思相同,只是使用字符串的形式。唯一不同的是支持占位符。

1.3. 示例

每隔5秒執(zhí)行一次:*/5 * * * * ?

每隔1分鐘執(zhí)行一次:0 */1 * * * ?

每天23點執(zhí)行一次:0 0 23 * * ?

每天凌晨1點執(zhí)行一次:0 0 1 * * ?

每月1號凌晨1點執(zhí)行一次:0 0 1 1 * ?

每月最后一天23點執(zhí)行一次:0 0 23 L * ?

每周星期天凌晨1點實行一次:0 0 1 ? * L

在26分、29分、33分執(zhí)行一次:0 26,29,33 * * * ?

每天的0點、13點、18點、21點都執(zhí)行一次:0 0 0,13,18,21 * * ?文章來源地址http://www.zghlxwxcb.cn/news/detail-679911.html

到了這里,關(guān)于springboot---定時任務(wù)實現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Spring Boot中的@Scheduled注解:定時任務(wù)的原理與實現(xiàn)

    Spring Boot中的@Scheduled注解:定時任務(wù)的原理與實現(xiàn)

    本文將詳細探討Spring Boot中@Scheduled注解的使用,包括其原理、實現(xiàn)流程、步驟和代碼示例。通過本文,讀者將能夠了解如何在Spring Boot應(yīng)用中輕松創(chuàng)建和管理定時任務(wù)。 在Spring框架中,@Scheduled注解用于標記一個方法,使其能夠在固定的時間間隔內(nèi)自動執(zhí)行。這個注解主要基于

    2024年02月22日
    瀏覽(27)
  • Spring Boot集成Quartz實現(xiàn)定時任務(wù)的動態(tài)創(chuàng)建、啟動、暫停、恢復(fù)、刪除

    Spring Boot集成Quartz實現(xiàn)定時任務(wù)的動態(tài)創(chuàng)建、啟動、暫停、恢復(fù)、刪除

    一、整個 Quartz 的代碼流程基本基本如下: 首先需要創(chuàng)建我們的任務(wù)(Job),比如取消訂單、定時發(fā)送短信郵件之類的,這是我們的任務(wù)主體,也是寫業(yè)務(wù)邏輯的地方。 創(chuàng)建任務(wù)調(diào)度器(Scheduler),這是用來調(diào)度任務(wù)的,主要用于啟動、停止、暫停、恢復(fù)等操作,也就是那幾個api的

    2024年02月11日
    瀏覽(20)
  • 【后端-Quartz】Springboot整合Quartz支持集群環(huán)境-設(shè)計業(yè)務(wù)與框架分離及實現(xiàn)定時任務(wù)調(diào)度

    【后端-Quartz】Springboot整合Quartz支持集群環(huán)境-設(shè)計業(yè)務(wù)與框架分離及實現(xiàn)定時任務(wù)調(diào)度

    我們的各個服務(wù)需要改造支持集群,現(xiàn)在的授權(quán)、日程使用的是基于內(nèi)存的spring scheduler定時任務(wù),如果部署多個節(jié)點,那么到了時間點,多個節(jié)點都會開始執(zhí)行定時任務(wù)從而可能引起業(yè)務(wù)和性能上的問題。 服務(wù)中的定時任務(wù)比較輕量,為了避免引入redis、zookeeper、單獨的定時

    2023年04月09日
    瀏覽(30)
  • Spring Boot定時任務(wù)

    Spring Boot定時任務(wù)

    目錄 1.概述 2.Spring Boot定時任務(wù) 2.1.快速使用 2.2.cron表達式 3.業(yè)務(wù)示例 3.1.業(yè)務(wù)描述 3.2.業(yè)務(wù)實現(xiàn) 4.實現(xiàn)原理 5.自定義線程池 在某些業(yè)務(wù)場景中,需要定時執(zhí)行一些任務(wù),有可能是定時統(tǒng)計然后生成報表,有可能是定時發(fā)起一個任務(wù)。最近在工作中就正好遇見一個定時發(fā)起問卷

    2024年02月07日
    瀏覽(30)
  • Spring boot開啟定時任務(wù)

    ?? 使用@Scheduled 注解很方便,但缺點是當我們調(diào)整了執(zhí)行周期的時候,需要重啟應(yīng)用才能生效,這多少有些不方便。為了達到實時生效的效果,那么可以使用接口來完成定時任務(wù),統(tǒng)一將定時器信息存放在數(shù)據(jù)庫中。 1.?在mysql中執(zhí)行一下腳本插入定時任務(wù): 2. Mapper層 3.?

    2024年02月10日
    瀏覽(24)
  • 解密Spring Boot的定時任務(wù)

    大家好!歡迎來到本篇博客,今天我們將深入探討Spring Boot中的定時任務(wù),以及它在單線程和多線程環(huán)境下的運行機制。本文將詳細解析定時任務(wù)的工作原理,并附帶實際案例進行演示。 1. Spring Boot定時任務(wù)的基本概念 Spring Boot的定時任務(wù)是基于Quartz Scheduler實現(xiàn)的,它允許您

    2024年01月19日
    瀏覽(36)
  • Spring Boot 面試題——定時任務(wù)

    (1)定時任務(wù)是一種 在指定的時間點或時間間隔內(nèi)自動觸發(fā)執(zhí)行的任務(wù) 。它能夠周期性地執(zhí)行一些重復(fù)性、時間敏感或計劃性的操作,而無需人工干預(yù)。定時任務(wù)的需求主要有以下幾個方面: 自動化 :定時任務(wù)可以實現(xiàn)某些操作的自動化,無需人工手動執(zhí)行。這可以提高

    2024年02月08日
    瀏覽(21)
  • spring-boot定時任務(wù)

    spring-boot定時任務(wù)

    定時任務(wù)規(guī)則:0? *? *? * ? *? * 表示任意月的任意周的每天的每時的每分的0秒開始一次任務(wù)。 任務(wù)加在方法上? 開始一次任務(wù) 表示 啟動?一次方法。 0/5 *? *? 5? *? 4? 表示 每月的最后一周的第五天的任意時任意分的0秒開始 每隔5秒啟動一次任務(wù)。 定時任務(wù)表達式 還有很

    2024年01月21日
    瀏覽(32)
  • Spring Boot動態(tài)設(shè)置定時任務(wù)

    Spring Boot動態(tài)設(shè)置定時任務(wù)

    ??????? spring boot項目實現(xiàn)定時任務(wù),最簡單的一種就是基于注解 @Schedule 的方式,在啟動類上添加 @EnableScheduling 注解進行標注,就可實現(xiàn)。但是,這個方式有個缺點,那就是執(zhí)行周期寫死在代碼里,無法動態(tài)改變,想要改變只能修改代碼再重新部署啟動。為了能夠動態(tài)的

    2024年02月08日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包