Spring Boot 的 Profiles 用於分區配置spring
好處:能夠經過spring.profiles.active 進行不一樣環境切換markdown
配置位置:Spring Boot 項目下 application.properties app
配置格式: (application-{profile}.properties) 會默認按照配置加載相應的配置文件maven
配置示例:
application-dev.properties
application-test.properties
application-prod.propertieside
spring.profiles.active=test 此時讀取application-test-properties文件 spring.profiles.active: prod,proddb,prodmq 同時激活三個配置
擴展:spring.profiles.include 用於疊加profile code
配置加載方式xml
一般狀況下第二種方式更適用於正式研發,代碼以下:ip
一、更改application.xml
由spring.profiles.active=dev更改成spring.profiles.active=@profileActive@it
二、更改pom.xml
<profile>
<id>dev</id>
<properties>
<profileActive>dev</profileActive>
<maven.test.skip>true</maven.test.skip>
<scope.jar>compile</scope.jar>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<profileActive>test</profileActive>
<maven.test.skip>true</maven.test.skip>
<scope.jar>provided</scope.jar>
</properties>
</profile>
<profile>
<id>demo</id>
<properties>
<profileActive>demo</profileActive>
<maven.test.skip>true</maven.test.skip>
<scope.jar>provided</scope.jar>
</properties>
</profile>
<profile>
<id>pro</id>
<properties>
<profileActive>pro</profileActive>
<maven.test.skip>true</maven.test.skip>
<scope.jar>provided</scope.jar>
</properties>
</profile>
三、在maven打包的時候執行命令
mvn clean ×××tall -Dmaven.test.skip=true -Ptestio
四、在application 執行命令-Dspring.profiles.active=dev