最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Spring Boot 中啟用定時任務的操作方法

 更新時間:2024年11月15日 09:33:15   作者:種樹人20240819  
文章主要介紹了如何在Spring Boot中啟用定時任務,包括使用@EnableScheduling注解、配置項控制定時任務是否開啟以及如何關閉cron定時任務,感興趣的朋友跟隨小編一起看看吧

添加 @EnableScheduling 注解

可以添加在 Application 類上

@SpringBootApplication
@EnableScheduling
public class Application {
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

定義定時任務類和方法

定時任務類要注冊為Spring IoC 容器的 Bean,或者通過 @Bean 將某個方法的返回值(返回值為定時任務類對象)注冊為 Spring IoC 的Bean。

package com.cmcc.nlpt.sitemessage.task;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class ScheduledTask {
    /**
     * 每日0點執(zhí)行
     */
    @Scheduled (cron = "0 0 0 * * ?")
    public void doCronTask() {
    }
    /**
     * 本次任務結束到下次任務開始的時間間隔為5秒
     */
    @Scheduled (fixedDelay = 5000)
    public void doFixedDelayTask() {
    }
    /**
     * 兩次任務開始時間間間隔為5秒
     */
    @Scheduled(fixedRate = 5000)
    public void doFixedRateTask() {
    }
    /**
     * 第一次任務啟動延時1秒,后續(xù)任務結束到下次任務開始的時間間隔為5秒
     */
    @Scheduled(initialDelay = 1000, fixedDelay = 5000)
    public void doInitialDelayTask() {
    }
}

通過配置項控制定時任務是否開啟

方法一 @ConditionalOnProperty

此方法是控制任務類是否注冊為 Spring IoC 的 Bean,可以控制上述所有類型的定時任務是否注冊。

# enabled 配置為 false 時定時任務就不會開啟
scheduled-task:
  enabled: true
@Component
@ConditionalOnProperty(name = "scheduled-task.enabled", havingValue = "true")
public class ScheduledTask {
    /**
     * 每日0點執(zhí)行
     */
    @Scheduled (cron = "0 0 0 * * ?")
    public void doCronTask() {
    }
    /**
     * 本次任務結束到下次任務開始的時間間隔為5秒
     */
    @Scheduled (fixedDelay = 5000)
    public void doFixedDelayTask() {
    }
    /**
     * 兩次任務開始時間間間隔為5秒
     */
    @Scheduled(fixedRate = 5000)
    public void doFixedRateTask() {
    }
    /**
     * 第一次任務啟動延時1秒,后續(xù)任務結束到下次任務開始的時間間隔為5秒
     */
    @Scheduled(initialDelay = 1000, fixedDelay = 5000)
    public void doInitialDelayTask() {
    }
}

方法二 Boolean 標志位

使用此方法定時任務還是會被調度執(zhí)行,只是在任務執(zhí)行時什么都不做,也可以控制上述所有類型的定時任務。

scheduled-task:
  enabled: true
@Component
@ConditionalOnProperty(name = "scheduled-task.enabled", havingValue = "true")
public class ScheduledTask {
    @Value("${scheduled-task.enabled}")
    private Boolean taskEnabled;
    @Scheduled (fixedDelay = 5000)
    public void doFixedDelayTask() {
        if (!taskEnabled) {
            return;
        }
        System.out.println("start to doFixedDelayTask");
    }
}

使用"-"使 cron 定時任務關閉

此方法只適用于 cron 類型的定時任務,不適用于其它類型的定時任務。

注意:yml 文件中配置 - 時要加上雙引號或單引號,否則會報錯。

關閉 cron 定時任務的配置:

scheduled-task:
  cron: "-"

開始 cron 定時任務的配置,將 cron 表達式配置上即可:

scheduled-task:
  cron: 0 0 0 * * ?
@Component
public class ScheduledTask {
    /**
     * 每日0點執(zhí)行
     */
    @Scheduled (cron = "${scheduled-task.cron}")
    public void doCronTask() {
    }
}

參考資料

到此這篇關于如何在 Spring Boot 中啟用定時任務的文章就介紹到這了,更多相關Spring Boot啟用定時任務內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • java實現(xiàn)檢測是否字符串中包含中文

    java實現(xiàn)檢測是否字符串中包含中文

    本文給大家分享了2個使用java檢測字符串中是否包含中文的代碼,都非常的實用,最后附上了各種字符的unicode編碼的范圍,方便我們以后使用正則進行匹配檢測。
    2015-10-10
  • Java中List集合去重的幾種方式詳細解析

    Java中List集合去重的幾種方式詳細解析

    這篇文章主要介紹了Java中List集合去重的幾種方式詳細解析,在日常的業(yè)務開發(fā)中,偶爾會遇到需要將 List 集合中的重復數(shù)據(jù)去除掉的場景,那么今天我們來看看幾種LIst集合去重的方式,需要的朋友可以參考下
    2023-11-11
  • Spring Boot 如何整合連接池

    Spring Boot 如何整合連接池

    這篇文章主要介紹了Spring Boot 如何整合連接池,幫助大家更好的理解和學習spring boot框架,感興趣的朋友可以了解下
    2020-11-11
  • Java的validation參數(shù)校驗代碼實例

    Java的validation參數(shù)校驗代碼實例

    這篇文章主要介紹了Java的validation參數(shù)校驗代碼實例,Validation參數(shù)校驗是指在程序運行中對傳進來的參數(shù)進行合法性檢查,以保證程序的正確性和安全性,需要的朋友可以參考下
    2023-10-10
  • 結合線程池實現(xiàn)apache?kafka消費者組的誤區(qū)及解決方法

    結合線程池實現(xiàn)apache?kafka消費者組的誤區(qū)及解決方法

    這篇文章主要介紹了結合線程池實現(xiàn)apache?kafka消費者組的誤區(qū)及解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • spring cloud學習入門之config配置教程

    spring cloud學習入門之config配置教程

    這篇文章主要給大家介紹了關于spring cloud學習入門之config配置的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用spring cloud具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-09-09
  • java 實現(xiàn)通過 post 方式提交json參數(shù)操作

    java 實現(xiàn)通過 post 方式提交json參數(shù)操作

    這篇文章主要介紹了java 實現(xiàn)通過 post 方式提交json參數(shù)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • Java如何實現(xiàn)Word文檔分欄效果

    Java如何實現(xiàn)Word文檔分欄效果

    這篇文章主要介紹了Java如何實現(xiàn)Word文檔分欄效果,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-05-05
  • IDEA啟動tomcat項目報錯53820 socket closed問題及解決

    IDEA啟動tomcat項目報錯53820 socket closed問題及解決

    IDEA啟動Tomcat項目時報錯,原因是IDEA關閉時Tomcat未正常關閉,導致端口被占用,解決方法是通過任務管理器關閉占用高內(nèi)存的Java進程,通常是IDEA進程下面的,或者使用命令行找到PID并強制終止進程
    2024-12-12
  • 微信js-sdk+JAVA實現(xiàn)“分享到朋友圈”和“發(fā)送給朋友”功能詳解

    微信js-sdk+JAVA實現(xiàn)“分享到朋友圈”和“發(fā)送給朋友”功能詳解

    本文分享了微信js-sdk+JAVA實現(xiàn)“分享到朋友圈”和“發(fā)送給朋友”功能介紹,大家可以參考一下
    2018-03-03

最新評論

丰宁| 望江县| 扎兰屯市| 建宁县| 武安市| 定陶县| 浦东新区| 延长县| 通辽市| 玉龙| 盐亭县| 阿荣旗| 六安市| 甘泉县| 永登县| 天祝| 武陟县| 陈巴尔虎旗| 哈尔滨市| 贞丰县| 罗甸县| 小金县| 繁峙县| 东阳市| 古丈县| 阜阳市| 花莲市| 吉隆县| 台江县| 广德县| 永善县| 贵溪市| 宜都市| 年辖:市辖区| 马山县| 会东县| 独山县| 宁津县| 富阳市| 松溪县| 武夷山市|