这只是多环境配置的一种方式,在不需要将配置文件外部化的情况,个人感觉是一种挺不错的方式。
1、pom文件-配置环境变量
<!-- 多环境配置 -->
<profiles>
<!-- 开发环境 -->
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<profile.active>dev</profile.active>
</properties>
</profile>
<!-- 测试环境 -->
<profile>
<id>test</id>
<properties>
<profile.active>test</profile.active>
</properties>
</profile>
<!-- 生产环境 -->
<profile>
<id>prod</id>
<properties>
<profile.active>prod</profile.active>
</properties>
</profile>
</profiles>
2、pom文件-配置资源文件路径
<build>
<!-- 指定资源文件路径 -->
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
3、yml配置文件
分别创建各个环境的配置文件(没有追加环境后缀的是公有配置文件)
公有配置文件要配置读取环境配置文件的位置
# spring 配置
spring:
application:
name: ms_test
http:
encoding:
force: true
charset: UTF-8
enabled: true
profiles:
# 环境配置 dev(开发环境) test(测试环境) prod(生产环境)
active: @profile.active@
各环境的配置文件就可以配置上与环境相关的属性配置了(例如:数据源、redis等)