關於springboot獲取自定義配置:${username}的時候,獲取到的是本機用戶名的問題


在學習springboot獲取自定義配置的時候,出現了一個很有意思的一幕

我首先在application.properties文件中自定義了如圖所示的屬性:

 

 

 然后在Controller類中,使用注解的方式注入到變量中去,如下圖所示:

 

接着,我啟動Application這個類,然后訪問對應的url地址,得到的結果如下圖所示:

 

這里的 鋒仔 是我電腦本機的用戶名的名字,造成這個現象的原因,我從網上看了一下,原因如下:

springboot 默認會優先加載系統環境變量,此時獲取到的username的值實際上指的是當前計算機的用戶名。而不是properties配置文件中指定的username的值。

解決方法的話,就是盡量不要與系統環境變量的名稱一致,例如將username改為usrname即可或者改為其他的(另外,user.name也是會獲取到系統變量名的)。

這個問題很有趣,特此記錄一下,希望能幫助其他的人。

參考博客地址:https://www.cnblogs.com/d191/p/12566008.html


免責聲明!

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



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