Spring Boot 屬性文件外置配置之多種設置途徑

      Spring Boot 自動配置的Bean提供了300多個用於微調的屬性,這些屬性可以通過在環境變量、java的系統屬性、JNDI(Java Naming and Directory Interface)、命令行參數或者屬性文件裏進行配置,以下已設置服務器端口號server.port=9080進行說明。

(1)命令行參數

$ java -jar  ***-0.0.1-SNAPSHOT.jar --server.port=9080

(2)java:comp/env裏的JNDI屬性

(3)JVM系統屬性

(4)操作系統的環境變量,例如在linux服務中:

$ export  server_port = 9080

(5) 應用程序內的application.properties 或者application.yml文件中,以及應用程序以外的application.properties 或者application.yml。在程序內外同時存在相同名稱的配置文件時,生效的順序是怎樣的呢?

      

外置 在相對於應用程序運行目錄的/config子目錄裏
外置 在應用程序運行的目錄裏
內置 在config包內
內置 在classpath根目錄裏

 

按照表格的優先級進行排序,就是配置屬性生效的順序。

(6)通過@PropertySource標註的屬性源

(7)默認屬性

從(1)~(7)按照優先級由高到低進行排序,任何在高優先級中屬性源都會覆蓋低優先級屬性源中相同屬性名的屬性

參考書籍:《Spring Boot 實戰》作者:【美】Craig Walls 著 , 丁雪豐 譯

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章