springboot AutoConfigureAfter控制Bean的注入順序方法詳解
這個文章主要介紹一下@AutoConfigureAfter在spring框架中的作用,在使用過程中,很多開發(fā)人員在使用它的時候都出現(xiàn)了問題,問題比較多的就是它們的注冊順序總不是我們預期的
,下面介紹一下正常的使用方法。
- @AutoConfigureAfter用在配置類上面,即需要在@Configuration修飾的類上,而不是@Component上面。
- 這些配置類,需要在spring.factories上面進行注冊
- @AutoConfigureAfter影響的是配置類中@Bean聲明的方法,而不是配置類本身
代碼測試
祖父配置
@Configuration @AutoConfigureBefore(Father.class) // 在我兒子Father之前,我GrandFather先初始化 public class GrandFather { @Bean public String grandFatherBean() { System.out.println("配置類GrandFatherConfig構造器被執(zhí)行..."); return null; } }
父親配置
@Configuration public class Father { @Bean public String fatherTest() { System.out.println("配置類FatherConfig構造器被執(zhí)行"); return "配置類FatherConfig構造器被執(zhí)行..."; } }
兒子配置
@Configuration @AutoConfigureAfter(Father.class) // 在爸爸之初始化 public class Son { @Bean public String SonBean() { System.out.println("配置類SonConfig構造器被執(zhí)行..."); return null; } }
spring.factories配置相關
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\ com.lind.common.bean.family.Father,\ com.lind.common.bean.family.GrandFather,\ com.lind.common.bean.family.Son
springboot啟動后,可以看到截,這些bean在初始化時,使用了正確的可預期的順序進行注冊
到此這篇關于springboot AutoConfigureAfter如何控制Bean的注入順序的文章就介紹到這了,更多相關springboot Bean注入順序內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
spring?boot集成jasypt?并實現(xiàn)自定義加解密的詳細步驟
由于項目中的配置文件?配置的地方過多,現(xiàn)將配置文件統(tǒng)一放到nacos上集中管理?且密碼使用加密的方式放在配置文件中,配置文件的加密使用加密庫jasypt,本文給大家介紹spring boot集成jasypt并實現(xiàn)自定義加解密,感興趣的朋友一起看看吧2023-08-08詳解Java對象序列化為什么要使用SerialversionUID
這篇文章主要介紹了詳解Java對象序列化為什么要使用SerialversionUID,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-11-11