Springboot 是簡(jiǎn)化Spring應(yīng)用開(kāi)發(fā)的創(chuàng)建谋梭、運(yùn)行、調(diào)試堡掏、部署等一系列問(wèn)題的框架是J2EE開(kāi)發(fā)的一站式解決方案宋梧,自動(dòng)裝配的特性可以讓我們更好的關(guān)注業(yè)務(wù)本身而不是外部的XML配置,我們只需遵循規(guī)范专缠,引入相關(guān)的依賴就可以輕松的搭建出一個(gè)WEB工程
[如果你覺(jué)得對(duì)你有幫助雷酪,歡迎轉(zhuǎn)發(fā)分享給更多的人學(xué)習(xí)]
springboot 啟動(dòng)會(huì)掃描以下位置的application.properties或者application.yml文件作為Spring boot的默認(rèn)配置文件
–file:./config/
–file:./
–classpath:/config/
–classpath:/優(yōu)先級(jí)由高到底,高優(yōu)先級(jí)的配置會(huì)覆蓋低優(yōu)先級(jí)的配置涝婉;
–file:./config/
–file:./
–classpath:/config/
–classpath:/
SpringBoot會(huì)從這四個(gè)位置全部加載主配置文件哥力;互補(bǔ)配置;
我們還可以通過(guò)spring.config.location來(lái)改變默認(rèn)的配置文件位置墩弯,當(dāng)項(xiàng)目打包好以后吩跋,我們可以使用命令行參數(shù)的形式,啟動(dòng)項(xiàng)目的時(shí)候來(lái)指定配置文件的新位置渔工;指定配置文件和默認(rèn)加載的這些配置文件共同起作用形成互補(bǔ)配置锌钮;
java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar --spring.config.location=G:/application.properties
外部配置加載順序
SpringBoot也可以從以下位置加載配置; 優(yōu)先級(jí)從高到低引矩;高優(yōu)先級(jí)的配置覆蓋低優(yōu)先級(jí)的配置轧粟,所有的配置會(huì)形成互補(bǔ)配置
1.命令行參數(shù)
所有的配置都可以在命令行上進(jìn)行指定
java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar -->server.port=8087 --server.context-path=/abc
多個(gè)配置用空格分開(kāi); --配置項(xiàng)=值
2.來(lái)自java:comp/env的JNDI屬性
3.Java系統(tǒng)屬性(System.getProperties())
4.操作系統(tǒng)環(huán)境變量
5.RandomValuePropertySource配置的random.*屬性值
由jar包外向jar包內(nèi)進(jìn)行尋找脓魏;
優(yōu)先加載帶profile
6.jar包外部的application-{profile}.properties或application.yml(帶>spring.profile)配置文件
7.jar包內(nèi)部的application-{profile}.properties或application.yml(帶spring.profile)配置文件
再來(lái)加載不帶profile
8.jar包外部的application.properties或application.yml(不帶spring.profile)配置文件
9.jar包內(nèi)部的application.properties或application.yml(不帶spring.profile)配置文件
10.@Configuration注解類上的@PropertySource
11.通過(guò)SpringApplication.setDefaultProperties指定的默認(rèn)屬性
所有支持的配置加載來(lái)源參考官方文檔
https://docs.spring.io/spring-boot/docs/1.5.9.RELEASE/reference/htmlsingle/#boot-features-external-config
“關(guān)注我的微信公眾號(hào),一起進(jìn)步“