SpringBoot多环境(dev、test、prod)配置详解
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)配置详解相关推荐
- SpringBoot配置文件中spring.profiles.active配置详解
SpringBoot配置文件中spring.profiles.active配置详解 1.多环境配置 我们在开发Spring Boot应用时,通常同一套程序会被应用和安装到几个不同的环境,比如:开发.测 ...
- Android studio 多渠道(多环境)打包grade配置详解
Android studio 多渠道(多环境)打包grade配置详解 场景:开发app,我们需要两套环境或者两套环境以上的apk,每套环境的apk分两个版本debug版和release版. 公司有套平 ...
- SpringBoot——slf4j+logback日志处理及配置详解
SpringBoot--sl4j+logback日志处理及配置详解 日志的级别 打印级别:ALL > TRACE > FATAL > DEBUG > INFO > WAR ...
- 最新最全GS游享天龙八部SF环境架设命令及配置详解
2023年最新最全天龙八部SF环境之GS游享环境命令配置详解,GS游享环境安装有两种方式,在线安装,离线安装包安装,以下简称为"gs环境".GS环境是目录行业里面最新最全支持最新服 ...
- SpringBoot 区分环境dev test prod
前言 很多时候,我们项目在开发环境和生成环境的环境配置是不一样的,例如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的时候,我们是用正式的数据,这时候,我们可以利用profile在不同 ...
- SpringBoot application.properties和application.yml配置详解
#SPRING CONFIG(ConfigFileApplicationListener) spring.config.name =#配置文件名(默认 为 'application' ) spring ...
- 小程序 测试环境 linux,Linux服务器环境 微信小程序 配置详解
http://www.wxapp-union.com/forum.php?mod=viewthread&tid=394&highlight=tomcat http://www.jb51 ...
- SpringBoot - resource资源文件的打包配置详解(指定资源文件位置)
一.问题描述 (1)默认 Spring Boot 项目结构,资源文件放置在 src/main/resources 中,测试的资源文件在 src/test/resources 中. src/main/r ...
- SpringBoot配置详解
SpringBoot配置详解 本文链接:http://blog.battcn.com/2018/04/22/springboot/v2-config-properties/ 上一篇介绍了SpringB ...
最新文章
- c语言一行黑白相间的瓷砖,C语言编程练习15:贴瓷砖
- MDaemon使用技巧大全--新建账户欢迎文件的设置
- Word打開時出現嚴重錯誤無法開啟的处理方法
- 背景se_SE新作《先驱者》首个内容预告 定于2020年圣诞发售
- S3C6410的IROM启动模式
- 在创业之路上不断创新
- long类型20位示例_Java Long类lowerOneBit()方法与示例
- JTable demo
- 大数据技术在物流中的应用
- 《墨菲定律》读书笔记
- 图标搜索引擎:Findicons
- 连读、变音、失音、浊化、弱读、节奏
- Java(springboot)连接MongoDB,终于成功啦T_T【呸】
- 阿里云ACA课程之云上安全防护
- TPC-H测试超详细介绍
- 神经网络入门(个人理解)
- Unity 3D官方教程——Tanks!学习记录
- 苹果电脑自动键入密码_键入时控制上网本或笔记本电脑的触摸板
- 毕业五年,终于上车了
- 联想sr850服务器文档,势不可挡 LenovoThinkSystem SR850给你信心
热门文章
- Cholesky分解算法Matlab代码
- 铁威马NAS之如何利用docker安装Jellyfin媒体服务器
- Data Guard ----理论详解(四)
- 张怡筠:幸福其实很简单
- 方寸之间你与自己的对话 | 真北敏捷书店
- python123自定义幂函数_《python语言程序设计》_第三章(数字函数、字符串和对象)...
- Approximate Nearest Neighbor Negative Contrastive Learning for Dense Text Retrieval
- 可变参数:va_list(),va_start(),va_arg(),va_end() 详细解析
- 点击数字自动拨号写法(打电话)
- linux中epoll原理,Linux下selectpollepoll的实现原理(一)