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

SpringTask實現(xiàn)定時任務(wù)方法講解

 更新時間:2023年02月15日 10:07:30   作者:龍貝子  
通過重寫Schedu lingConfigurer方法實現(xiàn)對定時任務(wù)的操作,單次執(zhí)行、停止、啟動三個主要的基本功能,動態(tài)的從數(shù)據(jù)庫中獲取配置的定時任務(wù)cron信息,通過反射的方式靈活定位到具體的類與方法中

SpringTask是Spring自帶的功能。實現(xiàn)起來比較簡單。

使用SpringTask實現(xiàn)定時任務(wù)有兩種方式:

1.注解方式

基于注解@Scheduled

@Scheduled(cron = "*/1 * * * * ?")
    public  void up(){
       System.out.println("定時任務(wù)開啟:"+System.currentTimeMillis());
    }

cron表達(dá)式定義定時任務(wù)如何去執(zhí)行。

2.配置文件xml方式

基于xml的方式【@Configuration + @ImportResource + xml】需要重啟應(yīng)用才能生效

配置xml文件,定義xml文件的名稱為task.xml,放置文件在resources文件夾下:

xml代碼如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:task="http://www.springframework.org/schema/task"
       xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.1.xsd
       http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-4.1.xsd
       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.1.xsd">
    <!--聲明一個具有一個線程的池,如果定義多個,每個對象將獲取同樣的運行機會-->
    <task:scheduler id="sch" pool-size="10"/>
    <!--任務(wù)的調(diào)度類-->
    <bean id="scheduleTask" class="com.cloudtop.base.task.ScheduleTask"/>
    <!--引用線程池-->
    <task:scheduled-tasks scheduler="sch">
        <!--年報調(diào)度任務(wù) 5秒-->
        <task:scheduled ref="scheduleTask" method="yearReportTask" cron="0/5 * * * * ?"/>
    </task:scheduled-tasks>
 
</beans>

配置類加載xml文件

package com.cloudtop.base.task;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
/**
 * 加載調(diào)度的配置文件
 */
@Configuration
@ImportResource(locations={"classpath:task/task.xml"})//加載調(diào)度xml
public class SpringTaskConfig {
}

任務(wù)的調(diào)度類實現(xiàn)

package com.cloudtop.base.task;
import com.cloudtop.base.error.exception.BusinessException;
import com.cloudtop.core.service.EnvironmentUpService;
import org.springframework.beans.factory.annotation.Autowired;
/**
 * 定時任務(wù)類
 */
public class ScheduleTask {
    @Autowired
    EnvironmentUpService environmentUpService;
    public void yearReportTask() throws BusinessException {
        System.out.println("*******定時任務(wù)執(zhí)行的業(yè)務(wù)代碼******");
    }
}

最后,第一種使用注解@EnableSchedu ling開啟定時任務(wù),第二種使用xml的方式配置好上面的三個文件就開啟了定時任務(wù),不用使用注解@EnableSchedu ling來開啟定時任務(wù)。

@SpringBootApplication
@ServletComponentScan
@EnableAutoConfiguration(exclude = {MultipartAutoConfiguration.class})
@EnableSchedu ling
public class CloudtopWebFrameApplication extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(CloudtopWebFrameApplication.class);
    }
    /**
     * 主程序入口
     * 所有SpringBoot項目均采用main方法啟動主程序,該部分為必須項
     * @param args
     */
    public static void main(String[] args) {
        SpringApplication.run(CloudtopWebFrameApplication.class, args);
    }
}

最后在控制臺會輸出結(jié)果:

到此這篇關(guān)于SpringTask實現(xiàn)定時任務(wù)方法講解的文章就介紹到這了,更多相關(guān)SpringTask定時任務(wù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring sentinel哨兵模式相關(guān)原理解析

    Spring sentinel哨兵模式相關(guān)原理解析

    這篇文章主要介紹了Spring sentinel哨兵模式相關(guān)原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • java8新特性教程之time包使用總結(jié)

    java8新特性教程之time包使用總結(jié)

    Java8新增了date和time的util包,下面這篇文章主要給大家介紹了關(guān)于java8新特性教程之time包使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • SpringBoot優(yōu)化接口響應(yīng)時間的九個技巧

    SpringBoot優(yōu)化接口響應(yīng)時間的九個技巧

    在實際開發(fā)中,提升接口響應(yīng)速度是一件挺重要的事,特別是在面臨大量用戶請求的時候,本文為大家整理了9個SpringBoot優(yōu)化接口響應(yīng)時間的技巧,希望對大家有所幫助
    2024-01-01
  • 頁面嵌入iframe Cookie丟失問題以及解決過程

    頁面嵌入iframe Cookie丟失問題以及解決過程

    文章介紹了在頁面嵌入iframe時遇到的cookie丟失問題,提出了解決方案:后端將cookie以鏈接參數(shù)的形式傳遞給前端,前端在請求接口時將cookie放在請求頭中,后端通過攔截器解析并重新放置cookie
    2026-02-02
  • java調(diào)用python代碼的兩種實現(xiàn)方式:Runtime.exec()和Jython

    java調(diào)用python代碼的兩種實現(xiàn)方式:Runtime.exec()和Jython

    在Java中調(diào)用Python代碼有多種方法,包括使用Runtime.exec()和第三方庫如Jython,Runtime.exec()通過系統(tǒng)命令執(zhí)行Python腳本,適用于簡單的調(diào)用場景,Jython則是一個Python的Java實現(xiàn),允許在Java中直接運行Python代碼,適用于更深層次的集成需求
    2025-01-01
  • IDEA無法識別相關(guān)module模塊問題的解決過程

    IDEA無法識別相關(guān)module模塊問題的解決過程

    這篇文章主要給大家介紹了關(guān)于IDEA無法識別相關(guān)module模塊問題的解決過程,文中通過圖文介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用IDEA具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07
  • Springboot過濾器禁止ip頻繁訪問功能實現(xiàn)

    Springboot過濾器禁止ip頻繁訪問功能實現(xiàn)

    這篇文章主要介紹了Springboot過濾器禁止ip頻繁訪問功能實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • 使用JavaSE來模擬斗地主

    使用JavaSE來模擬斗地主

    這篇文章主要介紹了使用JavaSE來模擬斗地主,對棋牌游戲有研究的同學(xué)可以參考一下
    2021-04-04
  • Java異常處理與throws關(guān)鍵字用法分析

    Java異常處理與throws關(guān)鍵字用法分析

    這篇文章主要介紹了Java異常處理與throws關(guān)鍵字用法,結(jié)合實例形式分析了java常見的異常、錯誤處理及throws關(guān)鍵字相關(guān)使用技巧、注意事項,需要的朋友可以參考下
    2019-01-01
  • Java中淺拷貝與深拷貝實例解析

    Java中淺拷貝與深拷貝實例解析

    這篇文章主要給大家介紹了關(guān)于Java中淺拷貝與深拷貝的相關(guān)資料,拷貝對象是java中經(jīng)常會遇到的問題,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09

最新評論

宁海县| 香河县| 仙居县| 曲水县| 土默特右旗| 泸西县| 濮阳市| 延安市| 天峨县| 拜泉县| 霍林郭勒市| 滕州市| 凤冈县| 鄂尔多斯市| 五大连池市| 德保县| 和平县| 丰镇市| 闽侯县| 灵宝市| 武山县| 绥江县| 桑植县| 黑山县| 阳原县| 凤翔县| 龙游县| 云南省| 盐亭县| 安康市| 辛集市| 临海市| 柘荣县| 富民县| 鹤庆县| 雅江县| 乌海市| 洪洞县| 抚远县| 北票市| 手游|