SpringBoot_外部配置載入順序
阿新 • • 發佈:2018-11-06
SpringBoot也可以從以下位置載入配置; 優先順序從高到低(1~11);高優先順序的配置覆蓋低優先順序的配置,所有的配置會形成互補配置
- 命令列引數
所有的配置都可以在命令列上進行指定
例如:
java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar --server.port=8087 --server.context-path=/abc
多個配置用空格分開; --配置項=值 - 來自java:comp/env的JNDI屬性
- Java系統屬性(System.getProperties())
- 作業系統環境變數
- RandomValuePropertySource配置的random.*屬性值
由jar包外向jar包內進行尋找;
優先載入帶profile的
- jar包外部的application-{profile}.properties或application.yml(帶spring.profile)配置檔案
- jar包內部的application-{profile}.properties或application.yml(帶spring.profile)配置檔案
再來載入不帶profile
-
jar包外部的application.properties或application.yml(不帶spring.profile)配置檔案
-
jar包內部的application.properties或application.yml(不帶spring.profile)配置檔案
-
@Configuration註解類上的@PropertySource
-
通過SpringApplication.setDefaultProperties指定的預設屬性