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

SpringBoot多線程與任務(wù)調(diào)度總結(jié)

 更新時(shí)間:2023年12月29日 08:28:34   作者:奮力向前123  
多線程與任務(wù)調(diào)度是java開(kāi)發(fā)中必須掌握的技能,本文主要介紹了SpringBoot多線程與任務(wù)調(diào)度總結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下

一、前言

多線程與任務(wù)調(diào)度是java開(kāi)發(fā)中必須掌握的技能,在springBoot的開(kāi)發(fā)中,多線程和任務(wù)調(diào)度變得越來(lái)越簡(jiǎn)單。實(shí)現(xiàn)方式可以通過(guò)實(shí)現(xiàn)ApplicationRunner接口,重新run的方法實(shí)現(xiàn)多線程。任務(wù)調(diào)度則可以使用@Scheduled注解

二、使用示例

@Slf4j
@Service
@Transactional(rollbackFor = Exception.class)
public class ToolServiceThread implements ApplicationRunner {

	@Autowired
	private TmpMUserService tmpMUserService;

	@Override
	public void run(ApplicationArguments args) throws Exception {
		log.info("開(kāi)啟線程.....,");

		// 處理用戶手機(jī)號(hào)
		// tmpMUserService.updateOne();

	}

	/**
	 * 定時(shí)任務(wù) 早上0點(diǎn)10分
	 */
	// @Scheduled(cron = "0 10 0 * * ?")
   @Scheduled(cron = "0 0/10 * * * ?") // 每10分鐘刷新
	public void hotelTask() throws Exception {

	}

}

三、java定時(shí)任務(wù)多種實(shí)現(xiàn)方式

  • 使用java.util.Timer類

import java.util.Timer;  
import java.util.TimerTask;  
  
public class TimerExample {  
    public static void main(String[] args) {  
        Timer timer = new Timer();  
        TimerTask task = new TimerTask() {  
            @Override  
            public void run() {  
                System.out.println("執(zhí)行定時(shí)任務(wù)!");  
            }  
        };  
        // 延遲5秒后開(kāi)始執(zhí)行任務(wù),然后每隔2秒執(zhí)行一次  
        timer.schedule(task, 5000, 2000);  
    }  
}

2.使用ScheduledExecutorService

ScheduledExecutorService 是Java 5及以上版本中提供的一個(gè)更加強(qiáng)大和靈活的定時(shí)任務(wù)執(zhí)行器。

import java.util.concurrent.Executors;  
import java.util.concurrent.ScheduledExecutorService;  
import java.util.concurrent.TimeUnit;  
  
public class ScheduledExecutorExample {  
    public static void main(String[] args) {  
        ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();  
        executor.scheduleAtFixedRate(() -> {  
            System.out.println("執(zhí)行定時(shí)任務(wù)!");  
        }, 5, 2, TimeUnit.SECONDS); // 延遲5秒后開(kāi)始執(zhí)行,然后每隔2秒執(zhí)行一次  
    }  
}

3.使用Spring的@Scheduled注解 (適用于Spring Boot應(yīng)用)

如果你正在使用Spring Boot,你可以使用@Scheduled注解來(lái)輕松地實(shí)現(xiàn)定時(shí)任務(wù)。首先,確保你的Spring Boot應(yīng)用已經(jīng)啟用了定時(shí)任務(wù)支持:在主類上添加@EnableScheduling注解。然后,你可以在方法上添加@Scheduled注解來(lái)指定任務(wù)的執(zhí)行計(jì)劃。

import org.springframework.scheduling.annotation.EnableScheduling;  
import org.springframework.scheduling.annotation.Scheduled;  
import org.springframework.stereotype.Component;  
  
@Component  
@EnableScheduling  
public class ScheduledTasks {  
    @Scheduled(fixedRate = 5000) // 每隔5秒執(zhí)行一次  
    public void doSomething() {  
        System.out.println("執(zhí)行定時(shí)任務(wù)!");  
    }  
}

四、java定時(shí)任務(wù)應(yīng)用場(chǎng)景

  • 定時(shí)發(fā)送通知:在企業(yè)管理系統(tǒng)中,可以設(shè)置定時(shí)任務(wù),定期向員工發(fā)送通知,例如會(huì)議提醒、任務(wù)更新等。
  • 定時(shí)執(zhí)行報(bào)表生成:在財(cái)務(wù)或銷售部門(mén),可以設(shè)置定時(shí)任務(wù),定期生成報(bào)表,例如每日銷售報(bào)表、月度財(cái)務(wù)報(bào)表等。
  • 定時(shí)處理訂單:在電商或物流系統(tǒng)中,可以設(shè)置定時(shí)任務(wù),自動(dòng)處理訂單狀態(tài),例如發(fā)貨、確認(rèn)收貨等。
  • 定時(shí)清理緩存:對(duì)于使用緩存的系統(tǒng),定時(shí)清理過(guò)期或無(wú)效的緩存可以提高系統(tǒng)的性能和穩(wěn)定性。
  • 定時(shí)備份數(shù)據(jù)庫(kù):類似于其他語(yǔ)言中的例子,Java 程序也可以設(shè)置定時(shí)任務(wù),定期備份數(shù)據(jù)庫(kù)數(shù)據(jù)。
  • 定時(shí)啟動(dòng)或停止服務(wù):在服務(wù)器管理中,可以設(shè)置定時(shí)任務(wù),自動(dòng)啟動(dòng)或停止服務(wù),例如在夜間關(guān)閉一些非必要的服務(wù)以節(jié)省資源。
  • 定時(shí)發(fā)送郵件或短信:Java 程序可以與郵件或短信服務(wù)集成,定時(shí)發(fā)送郵件或短信通知,例如會(huì)議提醒、生日祝福等。
  • 定時(shí)執(zhí)行批處理任務(wù):對(duì)于需要批量處理數(shù)據(jù)的場(chǎng)景,可以設(shè)置定時(shí)任務(wù),自動(dòng)執(zhí)行批處理任務(wù),例如數(shù)據(jù)導(dǎo)入、數(shù)據(jù)導(dǎo)出等。

到此這篇關(guān)于SpringBoot多線程與任務(wù)調(diào)度總結(jié)的文章就介紹到這了,更多相關(guān)SpringBoot多線程與任務(wù)調(diào)度內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java JSch遠(yuǎn)程執(zhí)行Shell命令的方法

    Java JSch遠(yuǎn)程執(zhí)行Shell命令的方法

    本文主要介紹了Java JSch遠(yuǎn)程執(zhí)行Shell命令,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Java持久層框架Mybatis入門(mén)詳細(xì)教程

    Java持久層框架Mybatis入門(mén)詳細(xì)教程

    Mybatis持久層框架支持自定義SQL、存儲(chǔ)過(guò)程以及高級(jí)映射,可以通過(guò)XML或注解來(lái)配置和映射原始類型、接口和Java POJOs為數(shù)據(jù)庫(kù)中的記錄,接下來(lái)通過(guò)本文給大家介紹Java持久層框架Mybatis入門(mén)詳細(xì)教程,一起學(xué)習(xí)下吧
    2021-06-06
  • mybatis-plus 返回部分字段的解決方式

    mybatis-plus 返回部分字段的解決方式

    這篇文章主要介紹了mybatis-plus 返回部分字段的解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • jar包在windows后臺(tái)運(yùn)行,通過(guò).bat文件實(shí)現(xiàn)

    jar包在windows后臺(tái)運(yùn)行,通過(guò).bat文件實(shí)現(xiàn)

    文章主要講解了在Windows后臺(tái)運(yùn)行JAR包的方法,通過(guò)創(chuàng)建啟動(dòng).bat和停止.bat文件,使用javaw方式運(yùn)行JAR包,可以在關(guān)閉cmd界面后仍然保持程序運(yùn)行,提供了啟動(dòng).bat和停止.bat的具體內(nèi)容
    2026-04-04
  • SpringBoot實(shí)現(xiàn)國(guó)際化的配置方法

    SpringBoot實(shí)現(xiàn)國(guó)際化的配置方法

    隨著一個(gè)系統(tǒng)的規(guī)模做上去之后,國(guó)際化的問(wèn)題就會(huì)逐漸暴露出來(lái),簡(jiǎn)單來(lái)說(shuō),當(dāng)你的系統(tǒng)面對(duì)的不再是本國(guó)的用戶,而要面臨海外用戶時(shí),系統(tǒng)必須要能適配國(guó)際化,所以本文給大家介紹了SpringBoot實(shí)現(xiàn)國(guó)際化的配置方法,需要的朋友可以參考下
    2025-11-11
  • Struts2學(xué)習(xí)教程之Action類如何訪問(wèn)WEB資源

    Struts2學(xué)習(xí)教程之Action類如何訪問(wèn)WEB資源

    這篇文章主要給大家介紹了關(guān)于Struts2學(xué)習(xí)教程之Action類如何訪問(wèn)WEB資源的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-04-04
  • SpringBoot定時(shí)任務(wù)實(shí)現(xiàn)數(shù)據(jù)庫(kù)數(shù)據(jù)同步全過(guò)程

    SpringBoot定時(shí)任務(wù)實(shí)現(xiàn)數(shù)據(jù)庫(kù)數(shù)據(jù)同步全過(guò)程

    文章詳細(xì)介紹了從簡(jiǎn)單到企業(yè)級(jí)數(shù)據(jù)庫(kù)同步需求的技術(shù)方案,包括選型、實(shí)現(xiàn)步驟、優(yōu)化方案、異常處理策略、生產(chǎn)環(huán)境配置建議等
    2025-12-12
  • Java中的 FilterInputStream簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    Java中的 FilterInputStream簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    FilterInputStream 的作用是用來(lái)“封裝其它的輸入流,并為它們提供額外的功能”。接下來(lái)通過(guò)本文給大家分享Java中的 FilterInputStream簡(jiǎn)介,感興趣的朋友一起學(xué)習(xí)吧
    2017-05-05
  • Spring Boot Feign服務(wù)調(diào)用之間帶token問(wèn)題

    Spring Boot Feign服務(wù)調(diào)用之間帶token問(wèn)題

    這篇文章主要介紹了Spring Boot Feign服務(wù)調(diào)用之間帶token的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Idea中Jdk和Language level的指定方式

    Idea中Jdk和Language level的指定方式

    這篇文章主要介紹了Idea中Jdk和Language level的指定方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-04-04

最新評(píng)論

桐乡市| 通化市| 北宁市| 锡林郭勒盟| 张北县| 东山县| 手机| 三门县| 洱源县| 石嘴山市| 红原县| 盐池县| 海林市| 克什克腾旗| 梅州市| 柞水县| 大石桥市| 新兴县| 海晏县| 鄂托克前旗| 山阴县| 慈溪市| 股票| 邯郸市| 赤城县| 邹城市| 呼图壁县| 永平县| 临汾市| 罗山县| 庆云县| 天津市| 都兰县| 兴山县| 巴林左旗| 泌阳县| 霍林郭勒市| 东辽县| 清流县| 芷江| 光山县|