Spring中@Value("${}"))取不到值的幾種情況


https://blog.csdn.net/dh12313012/article/details/84661169

1. spring組件重寫構造方法,在構造方法中引用@Value為null

 

由於spring實例化順序為先執行構造方法,再注入成員變量,所以序為先執行構造方法,再注入成員變量,所以ing實例化順取值為null
解決辦法為:再寫一個常量類,在常量類中引用@value,再在構造方法中引用常量類的變量即可。

2. 調用spring組件時使用new對象,而不是@Autowired

   

使用對象來取得參數的時候,如果使用new創建對象,那么將取值為null。
使用@Autowired注解

3 使用final或static修飾成員變量

4. spring mvc中引用@value為null

spring mvc是spring的子容器,需要在兩個配置文件中都導入配置文件
<context:property-placeholder location=“classpath:jdbc.properties” ignore-unresolvable=“true”/>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM