springboot?@PostConstruct無效的解決
springboot @PostConstruct無效
springboot 1.5.18,jdk9
@PostConstruct的方法并不執(zhí)行,原因是jdk8以上的jdk使用了新的module系統(tǒng),javax.annotation默認(rèn)不可見。
解決辦法
1.用jdk1.8
2.使用springboot 2.x
3.POM添加javax.annotation:javax.annotation-api依賴
spring @PostConstruct的踩坑
在springboot程序啟動(dòng)過程中出現(xiàn)一個(gè)問題
代碼中有一個(gè)需要在spring容器啟動(dòng)之后就執(zhí)行的方法。
于是就用@POstConstrut 注解在方法上,本地IDE啟動(dòng)是正常運(yùn)行的,在使用jenkins部署過程中,一個(gè)SpringContentHondler實(shí)現(xiàn)ApplicationContextAware的類 里面有靜態(tài)方法獲取spring容器里面的bean。?
在啟動(dòng)后調(diào)用方法發(fā)現(xiàn)SpringContentHondler里面的application 變量沒有賦值 為NULL ,報(bào)了一個(gè)空指針。?
疑點(diǎn)在于本地啟動(dòng)是正常,jenkins啟動(dòng)就有問題。
后來使用spring boot里面提供給的commandrunLister接口。
他會(huì)在spring容器bean都裝配好后,各個(gè)初始化都完畢后,再調(diào)用我們自定義的方法(可以正常使用@auto注入)這樣就不會(huì)錯(cuò)了
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- springboot中@PostConstruct注解使用小結(jié)
- SpringBoot中@PostConstruct 注解的實(shí)現(xiàn)
- springboot啟動(dòng)加載CommandLineRunner @PostConstruct問題
- SpringBoot中的@PostConstruct注解詳細(xì)解析
- SpringBoot使用@PostConstruct注解導(dǎo)入配置方式
- 淺談SpringBoot中的Bean初始化方法?@PostConstruct
- SpringBoot @PostConstruct和@PreDestroy的使用說明
- SpringBoot @PostConstruct原理用法解析
- SpringBoot中多個(gè)PostConstruct注解執(zhí)行順序控制
相關(guān)文章
Springmvc ResponseBody響應(yīng)json數(shù)據(jù)實(shí)現(xiàn)過程
這篇文章主要介紹了Springmvc ResponseBody響應(yīng)json數(shù)據(jù)實(shí)現(xiàn)過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10解決java.sql.SQLException:The?server?time?zone?value?&apo
這篇文章主要介紹了解決java.sql.SQLException:The?server?time?zone?value?'?D1ú±ê×?ê±??'?is?unrecognized問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03Idea連接數(shù)據(jù)庫并執(zhí)行SQL語句的方法示例
這篇文章主要介紹了Idea連接數(shù)據(jù)庫并執(zhí)行SQL語句的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11Java實(shí)現(xiàn)圖片上傳至服務(wù)器功能(FTP協(xié)議)
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)圖片上傳至服務(wù)器功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06