SpringBoot2.0 配置文件多环境

Posted 飞昂之雪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot2.0 配置文件多环境相关的知识,希望对你有一定的参考价值。

在SpringBoot中,多环节的配置文件名基于application-{profile}.properties的格式,其中{profile}对应环境标识,比如:

  • application-daily.properties  测试环境
  • application-gray.properties  灰度环境
  • application-production.properties  线上环境

在启动时具体加载的文件由spring.profiles.active属性来设置。

该值可以在applicaton.properties文件中设置,也可以在启动命令上指定。

执行java -jar xxx.jar,使用默认的开发环境(local)

执行java -jar xxx.jar --spring.profiles.active=daily,使用测试环境的配置(daily)

执行java -jar xxx.jar --spring.profiles.active=production,使用生产环境的配置(production)

除了application.properties文件的配置之外,也有一些中间件依赖的配置文件,这些文件一般有限定的文件名,固定的配置参数等。

这些文件要分环境打包的话,有一种策略是分别维护多套环境的配置文件,在打包时做相应的替换处理。

项目基于gradle时,配置如下:

task copyEnv(type: Copy) {
    from "src/main/env/" + System.properties[\'env\']
    into "build/resources/main"
}

bootJar.dependsOn copyEnv

在编译时,命令如下:

gradle bootJar -Denv=daily

配置文件路径如上图,不同的环境维护相应的路径即可。

以上是关于SpringBoot2.0 配置文件多环境的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot2.0 配置多数据源

springboot学习入门简易版八---springboot2.0多环境配置整合mybatis mysql8+(19-20)

springboot2.0入门-- profile启动文件配置

SpringBoot2.0 基础案例(02):配置Log4j2,实现不同环境日志打印

SpringBoot2.0 基础案例(02):配置Log4j2,实现不同环境日志打印

SpringBoot2.0 基础案例(02):配置Log4j2,实现不同环境日志打印