SpringBoot中多個(gè)PostConstruct注解執(zhí)行順序控制
項(xiàng)目場(chǎng)景:
多個(gè)類(lèi)中使用@PostConstruct加載先后順序
問(wèn)題描述
有時(shí)候Class A中@PostConstruct注解的方法中的代碼執(zhí)行,需要等待Class B中@PostConstruct 注解方法中的代碼執(zhí)行完后,拿到結(jié)果,才能執(zhí)行,也就是中A中某些代碼的執(zhí)行需要依賴(lài)B中代碼執(zhí)后的結(jié)果,此時(shí)就需要B先執(zhí)行完,再執(zhí)行A,
解決方案:
方式一:可以在A中先注入B,那么就會(huì)先加載B
@Service
@DependsOn("b")
public class A{
@PostConstruct
public void init() {
System.out.println("A Bean init method called");
}
}@Service
public class B{
@PostConstruct
public void init() {
System.out.println("B Bean init method called");
}
}方式二:使用@Order注解
@Service
@Order(2) // 指定執(zhí)行順序?yàn)?
public class A{
@PostConstruct
public void init() {
System.out.println("A Bean init method called");
}
}@Service
@Order(1) // 指定執(zhí)行順序?yàn)?
public class B{
@PostConstruct
public void init() {
System.out.println("B Bean init method called");
}
}@Order 值較小的 bean先執(zhí)行
到此這篇關(guān)于SpringBoot中多個(gè)PostConstruct注解執(zhí)行順序控制的文章就介紹到這了,更多相關(guān)SpringBoot PostConstruct 執(zhí)行順序內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- springboot中@PostConstruct注解使用小結(jié)
- SpringBoot中@PostConstruct 注解的實(shí)現(xiàn)
- springboot啟動(dòng)加載CommandLineRunner @PostConstruct問(wèn)題
- SpringBoot中的@PostConstruct注解詳細(xì)解析
- SpringBoot使用@PostConstruct注解導(dǎo)入配置方式
- springboot?@PostConstruct無(wú)效的解決
- 淺談SpringBoot中的Bean初始化方法?@PostConstruct
- SpringBoot @PostConstruct和@PreDestroy的使用說(shuō)明
- SpringBoot @PostConstruct原理用法解析
相關(guān)文章
Java如何獲取當(dāng)天零點(diǎn)和明天零點(diǎn)的時(shí)間和時(shí)間戳
這篇文章主要介紹了如何在Java中獲取當(dāng)天零點(diǎn)和明天零點(diǎn)的時(shí)間和時(shí)間戳,并提供了示例代碼,新手小白完全可以通過(guò)文中介紹的代碼實(shí)現(xiàn),需要的朋友可以參考下2025-03-03
Java實(shí)現(xiàn)度分秒坐標(biāo)轉(zhuǎn)十進(jìn)制度
隨著技術(shù)的發(fā)展,十進(jìn)制度因其精確性和便捷性在現(xiàn)代應(yīng)用中越來(lái)越受到青睞,下面我們就來(lái)看看如何使用Java實(shí)現(xiàn)度分秒坐標(biāo)轉(zhuǎn)十進(jìn)制度吧2024-12-12
knife4j3.0.3整合gateway和注冊(cè)中心的詳細(xì)過(guò)程
這篇文章主要介紹了knife4j3.0.3整合gateway和注冊(cè)中心的詳細(xì)過(guò)程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03
java的Object里wait()實(shí)現(xiàn)原理講解
這篇文章主要介紹了java的Object里wait()實(shí)現(xiàn)原理,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09
Java?Stream函數(shù)式編程管道流結(jié)果處理
這篇文章主要為大家介紹了Java?Stream函數(shù)式編程管道流結(jié)果處理的示例過(guò)程解析需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03
SpringBoot實(shí)現(xiàn)動(dòng)態(tài)定時(shí)任務(wù)的示例代碼
在SpringBoot項(xiàng)目中簡(jiǎn)單使用定時(shí)任務(wù),不過(guò)由于要借助cron表達(dá)式且都提前定義好放在配置文件里,不能在項(xiàng)目運(yùn)行中動(dòng)態(tài)修改任務(wù)執(zhí)行時(shí)間,實(shí)在不太靈活?,F(xiàn)在我們就來(lái)實(shí)現(xiàn)可以動(dòng)態(tài)修改cron表達(dá)式的定時(shí)任務(wù),感興趣的可以了解一下2022-10-10
Idea 配置國(guó)內(nèi) Maven 源的圖文教程
這篇文章主要介紹了Idea 配置國(guó)內(nèi) Maven 源的教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-11-11

