SpringBoot多环境(dev、test、prod)配置详解

我们在开发应用的时候,通常同一套程序会被应用和安装到几个不同的环境中,比如开发、测试、生产等。其中每个环境的数据库地址、服务器端口等配置都不同。如果在为不同环境打包时都要频繁的修改配置文件,那必将是个非常繁琐的且容易出错的事情。

对于多环境的配置,各种项目构建工具或是架构的基本思路是一样的,通过配置多份不同的环境配置文件,在通过打包命令指定需要打包的内容之后进行区分打包,spring boot也不列外。或者说实现起来更加简单。

1、properties配置格式

在Spring Boot中多环境配置文件名需要满足application-{profile}.properties的格式,其中{profile}对应你的环境标识,比如:

application-dev.properties:开发环境

application-test.properties:测试环境

application-uta.properties:预发环境

application-prod.properties:生产环境

至于哪个具体的配置文件会被加载,需要在application.properties文件中通过spring.profiles.active属性来设置,其值对应{profile}值。

spring.profiles.active=dev就会加载application-dev.properties配置文件内容

2、测试不同配置的加载

执行java -jar xxx.jar,可以观察到服务端口被设置为8001,也就是默认的开发环境(dev)
执行java -jar xxx.jar --spring.profiles.active=test,可以观察到服务端口被设置为8002,也就是测试环境的配置(test)              执行java -jar xxx.jar --spring.profiles.active=uta,可以观察到服务端口被设置为8003,也就是生产环境的配置(uta)
执行java -jar xxx.jar --spring.profiles.active=prod,可以观察到服务端口被设置为8004,也就是生产环境的配置(prod)

开发(dev)测试结果:

 测试(test)测试结果:

 其他,可以测试时ok的

3、总结

application.properties中配置通用内容,并设置spring.profiles.active=dev,以开发环境为默认配置

application-{profile}.properties中配置各个环境不同的内容

SpringBoot多环境(dev、test、prod)配置详解相关推荐

  1. SpringBoot配置文件中spring.profiles.active配置详解

    SpringBoot配置文件中spring.profiles.active配置详解 1.多环境配置 我们在开发Spring Boot应用时,通常同一套程序会被应用和安装到几个不同的环境,比如:开发.测 ...

  2. Android studio 多渠道(多环境)打包grade配置详解

    Android studio 多渠道(多环境)打包grade配置详解 场景:开发app,我们需要两套环境或者两套环境以上的apk,每套环境的apk分两个版本debug版和release版. 公司有套平 ...

  3. SpringBoot——slf4j+logback日志处理及配置详解

    SpringBoot--sl4j+logback日志处理及配置详解 日志的级别 打印级别:ALL > TRACE > FATAL > DEBUG > INFO > WAR ...

  4. 最新最全GS游享天龙八部SF环境架设命令及配置详解

    2023年最新最全天龙八部SF环境之GS游享环境命令配置详解,GS游享环境安装有两种方式,在线安装,离线安装包安装,以下简称为"gs环境".GS环境是目录行业里面最新最全支持最新服 ...

  5. SpringBoot 区分环境dev test prod

    前言 很多时候,我们项目在开发环境和生成环境的环境配置是不一样的,例如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的时候,我们是用正式的数据,这时候,我们可以利用profile在不同 ...

  6. SpringBoot application.properties和application.yml配置详解

    #SPRING CONFIG(ConfigFileApplicationListener) spring.config.name =#配置文件名(默认 为 'application' ) spring ...

  7. 小程序 测试环境 linux,Linux服务器环境 微信小程序 配置详解

    http://www.wxapp-union.com/forum.php?mod=viewthread&tid=394&highlight=tomcat http://www.jb51 ...

  8. SpringBoot - resource资源文件的打包配置详解(指定资源文件位置)

    一.问题描述 (1)默认 Spring Boot 项目结构,资源文件放置在 src/main/resources 中,测试的资源文件在 src/test/resources 中. src/main/r ...

  9. SpringBoot配置详解

    SpringBoot配置详解 本文链接:http://blog.battcn.com/2018/04/22/springboot/v2-config-properties/ 上一篇介绍了SpringB ...

最新文章

  1. c语言一行黑白相间的瓷砖,C语言编程练习15:贴瓷砖
  2. MDaemon使用技巧大全--新建账户欢迎文件的设置
  3. Word打開時出現嚴重錯誤無法開啟的处理方法
  4. 背景se_SE新作《先驱者》首个内容预告 定于2020年圣诞发售
  5. S3C6410的IROM启动模式
  6. 在创业之路上不断创新
  7. long类型20位示例_Java Long类lowerOneBit()方法与示例
  8. JTable demo
  9. 大数据技术在物流中的应用
  10. 《墨菲定律》读书笔记
  11. 图标搜索引擎:Findicons
  12. 连读、变音、失音、浊化、弱读、节奏
  13. Java(springboot)连接MongoDB,终于成功啦T_T【呸】
  14. 阿里云ACA课程之云上安全防护
  15. TPC-H测试超详细介绍
  16. 神经网络入门(个人理解)
  17. Unity 3D官方教程——Tanks!学习记录
  18. 苹果电脑自动键入密码_键入时控制上网本或笔记本电脑的触摸板
  19. 毕业五年,终于上车了
  20. 联想sr850服务器文档,势不可挡 LenovoThinkSystem SR850给你信心

热门文章

  1. Cholesky分解算法Matlab代码
  2. 铁威马NAS之如何利用docker安装Jellyfin媒体服务器
  3. Data Guard ----理论详解(四)
  4. 张怡筠:幸福其实很简单
  5. 方寸之间你与自己的对话 | 真北敏捷书店
  6. python123自定义幂函数_《python语言程序设计》_第三章(数字函数、字符串和对象)...
  7. Approximate Nearest Neighbor Negative Contrastive Learning for Dense Text Retrieval
  8. 可变参数:va_list(),va_start(),va_arg(),va_end() 详细解析
  9. 点击数字自动拨号写法(打电话)
  10. linux中epoll原理,Linux下selectpollepoll的实现原理(一)