SpringBoot实现启动一键切换多配置在也不用那么麻烦了

简介: SpringBoot实现启动一键切换多配置在也不用那么麻烦了

介绍:

SpringBoot我有三个配置如果切来切去还要修改配置文件显然是不合理的。

application-dev.yml  

application-prod.yml  

application-test.yml  

application.yml

解决思路:

不同的环境可能需要不同的配置。为了解决这个问题,可以采用以下几种方法进行多环境配置:

使用Spring Boot的profile功能:

1.Spring Boot支持基于profile的属性配置。你可以在application.yml文件中使用spring.profiles.active属性来指定当前激活的profile。根据不同的环境,可以创建不同的profile配置文件,

例如application-dev.yml

application-test.yml

application-prod.yml

在运行时,通过设置不同的环境变量或命令行参数来激活相应的profile。

1.修改pom.xml文件
<profiles>
        <!-- 开发环境 -->
        <profile>
            <id>dev</id>
            <properties>
                <package.environment>dev</package.environment>
            </properties>
            <activation>
                <!-- 默认激活这个配置 使用dev-->
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
 
        <!--测试环境-->
        <profile>
            <id>test</id>
            <properties>
                <package.environment>test</package.environment>
            </properties>
        </profile>
 
        <!--生产环境-->
        <profile>
            <id>prod</id>
            <properties>
                <package.environment>prod</package.environment>
            </properties>
        </profile>
    </profiles>
    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <include>application.yml</include>
                    <include>application-${package.environment}.yml</include>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>
2.配置文件取属性(application.yml)
server:
  port: 9000
  tomcat:
    basedir: /.
 
spring:
  profiles:
    active: @package.environment@  # 指定环境
 
3.根据不同属性启动(启动的时候可以勾选dev就是dev,也可以勾选其他)

4.打包
# 开发环境
mvn clean package -P dev
 
# 测试环境
mvn clean package -P test
 
# 生产环境
mvn clean package -P prod


目录
打赏
0
1
1
0
81
分享
相关文章
Springboot项目启动的三种方式
Springboot项目启动的三种方式
332 0
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
304 0
如何修改springboot项目启动时的默认图标?
如何修改springboot项目启动时的默认图标?
209 0
如何修改springboot项目启动时的默认图标?
31SpringBoot启动配置原理
31SpringBoot启动配置原理
53 0
Springboot中实现手动启动和暂停任务的功能
Springboot中实现手动启动和暂停任务的功能
502 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等