java工具類static靜態(tài)方法讀取yml配置過程
更新時間:2024年11月18日 08:39:30 作者:ekkcole
文章介紹了在工具類中獲取YAML配置時遇到的問題,由于變量是靜態(tài)的,而Spring加載靜態(tài)方法比IOC容器早,導致無法直接使用@Value注解讀取YAML配置,從而讀取結果為null
java工具類static靜態(tài)方法讀取yml配置
當我們需要在工具類中獲取yml配置的時候,由于變量是staic導致獲取不到y(tǒng)ml配置
因為spring加載靜態(tài)方法比IOC早,所以不能直接使用@Value注解讀取yml配置,讀取結果是null。
@Component public class TestUtil { // 使用@Value注解讀取yml配置的數(shù)據(jù) @Value("${test.url}") private String urlVlue; // 設置靜態(tài)成員變量用來接收@Value注入的值 private static String url; // 使用@PostConstruct注解用于靜態(tài)變量賦值。 @PostConstruct public void setUrl() { url=this.urlVlue; } // 測試方法靜態(tài)變量是否被賦值 public static String testDemo() { return url; } }
@RestController public class GiteeLogin { @GetMapping("/testUtil") public String testUtil(){ return TestUtil.testDemo(); } }
這樣就可以獲取到了
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
OutOfMemoryError內(nèi)存不足和StackOverflowError堆棧溢出示例詳解
這篇文章主要為大家介紹了OutOfMemoryError內(nèi)存不足和StackOverflowError堆棧溢出示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-09-09SpringCloud Gateway的基本入門和注意點詳解
這篇文章主要介紹了SpringCloud Gateway的基本入門和注意點,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-10-10Springboot 2.6集成redis maven報錯的坑記錄
這篇文章主要介紹了Springboot 2.6集成redis maven報錯的坑記錄,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04springboot調(diào)用webservice-soap接口的實現(xiàn)
接口協(xié)議目前廣泛使用的有http協(xié)議和RPC協(xié)議和webservice,本文主要介紹了springboot調(diào)用webservice-soap接口的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下2024-03-03Spring Cloud 系列之負載均衡 Ribbon的示例代碼
Ribbon 是 Netflix 發(fā)布的負載均衡器,它有助于控制 HTTP 和 TCP 客戶端的行為。這篇文章主要介紹了Spring Cloud 系列之負載均衡 Ribbon的示例代碼,需要的朋友可以參考下2020-11-11