springboot+maven实现配置文件切换与隔离
SpringBoot+MAVEN实现配置文件切换
yaml文件修改
项目结构如下:
resources:
application.yaml
application-dev.yaml
application-prod.yaml
在application.yaml中添加基础配置:
# 公共配置
server:
port: 8000
address: 0.0.0.0
tomcat:
max-swallow-size: 100MB
# 默认使用配置
spring:
profiles:
active: @profileActive@
application-dev.yaml中添加不同的配置内容
spring:
datasource:
url: jdbc:mysql://localhost:3306/dev_datasource?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
username: username
password: password
driver-class-name: com.mysql.cj.jdbc.Driver
application-prod.yaml添加生产环境的配置内容,与上相同
pom文件修改
在project中添加
<profiles>
<!-- dev开发环境配置,release为生产环境配置 -->
<profile>
<id>dev</id>
<properties>
<profileActive>dev</profileActive>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<properties>
<profileActive>prod</profileActive>
</properties>
</profile>
</profiles>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<!-- 处理文件时替换文件中的变量 -->
<filtering>true</filtering>
<excludes>
<!-- 打包时排除文件,可自行添加test.yml -->
<exclude>application.yaml</exclude>
<exclude>application-dev.yaml</exclude>
<exclude>application-prod.yaml</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<!-- 打包时所包含得文件 -->
<includes>
<include>application.yaml</include>
<include>application-${profileActive}.yaml</include>
</includes>
</resource>
</resources>
</build>

浙公网安备 33010602011771号