關於SpringBoot的多個配置檔案問題
在配置檔案編寫的時候,檔名可以為application-{profile}.properties/yml,預設使用的是application.properties/yml的配置。
怎麼使用啟用指定的profile的配置檔案:
在配置檔案中可以直接指定為dev 當前訪問的埠號為8089,yml檔案可以在一個檔案中支援多文件塊
server: port: 8088 spring: profiles: active: dev --- server: port: 8089 spring: profiles: dev --- server: port: 8090 spring: profiles: prod |
1. 通過配置檔案中指定spring:profiles:active:dev
2. 命令列指定:
java -jar springboot-mybatis-0.0.1-SNAPSHOT.jar --spring.profiles.active=dev;
3. 虛擬機器引數;
-Dspring.profiles.active=dev
配置檔案的載入位置:
springBoot啟動會掃描一下的位置中的application.properties的配置檔案
-file:./config/(當前專案下的config資料夾(src同級目錄)中的application.properties)
-file:./(同上)
-classpath:./config/(當前專案中resources資原始檔夾下的config資料夾)
-classpath:./(同上)
優先順序由高到低,高優先順序的配置可以覆蓋低優先順序的配置,這四個配置檔案是互補配置。
也可以通過spring.config.location指定配置檔案的位置
專案打包好以後,我們可以使用命令列引數的形式,啟動專案的時候來指定配置檔案的新位置;指定配置檔案和預設載入的這些配置檔案共同起作用形成互補配置;
java -jar springboot-mybatis-0.0.1-SNAPSHOT.jar --spring.config.location=E:/application.properties