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