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>
posted @ 2025-04-28 15:22  在成长的土拨鼠  阅读(51)  评论(0)    收藏  举报