SpringBoot指定激活配置文件
  YdgLK35ZDPaA 2023年12月11日 12 0


在日常开发中至少有三个环境,分别是开发环境(dev),测试环境(test),生产环境(prod)。不同的环境配置都不尽相同,如请求地址、用户名、密码等。

Spring Boot 对多环境整合已经有了很好的支持,能够在运行间、打包时自由切换环境。

创建配置文件

分别创建以下文件

  • application.yml
  • application-dev.yml
  • application-test.yml
  • application-prod.yml

application.yml 文件上默认的配置文件。

指定运行的环境

虽然创建了各个环境的配置文件,但是 Spring Boot 仍然不知道你要运行哪个环境,有以下两种方式指定:

配置文件中指定

在 application.yml 文件中指定,内容如下:

# 指定运行环境为测试环境
spring.profiles.active=test

如果没有指定运行的环境,Spring Boot 会默认加载 application.yml 文件,再去找 test 环境的配置文件。

运行 jar 的时候指定

Spring Boot 内置的环境切换能够在运行Jar包的时候指定环境,命令如下:

java -jar xxx.jar -Dspring.profiles.active=test

Maven 多环境配置

Maven 对于多环境的支持在功能方面更加强大,支持JDK版本、资源文件、操作系统等等因素来选择环境。

pom 文件中定义 profiles 配置:

<!-- 多环境配置方案 -->
<profiles>
    <profile>
        <!-- 不同环境的唯一ID -->
        <id>local</id>
        <activation>
            <!-- 默认激活环境 -->
            <activeByDefault>true</activeByDefault>
        </activation>
        <!-- 环境变量 -->
        <properties>
            <spring.profiles.active>local</spring.profiles.active>
        </properties>
    </profile>
    <profile>
        <id>dev</id>
        <properties>
            <spring.profiles.active>dev</spring.profiles.active>
        </properties>
    </profile>
    <profile>
        <id>test</id>
        <properties>
            <spring.profiles.active>test</spring.profiles.active>
        </properties>
    </profile>
    <profile>
        <id>prod</id>
        <properties>
            <spring.profiles.active>prod</spring.profiles.active>
        </properties>
    </profile>
</profiles>

在使用 mvn 打包时,需要使用 -P 指定环境,如下:

mvn clean package -P test
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: Kafka 的应用场景 下一篇: 日志打印规则
  1. 分享:
最后一次编辑于 2023年12月11日 0

暂无评论

推荐阅读
YdgLK35ZDPaA