springboot多环境配置

Posted THISISPAN

tags:

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

springboot多环境(dev、test、prod)配置

技术分享图片 分类:
 

目录(?)[+]

 

propertiest配置格式

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

application-dev.properties:开发环境 
application-test.properties:测试环境 
application-prod.properties:生产环境 
至于哪个具体的配置文件会被加载,需要在application.properties文件中通过spring.profiles.active属性来设置,其值对应{profile}值。 
技术分享图片 
如:spring.profiles.active=dev就会加载application-dev.properties配置文件内容 
技术分享图片 
下面,以不同环境配置不同的服务端口为例,进行样例实验。 
针对各环境新建不同的配置文件application-dev.properties、application-test.properties、application-prod.properties 
在这三个文件均都设置不同的server.port属性,如:dev环境设置为8001,test环境设置为8002,prod环境设置为8003 
application.properties中设置spring.profiles.active=dev,就是说默认以dev环境设置

测试不同配置的加载

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

按照上面的实验,可以如下总结多环境的配置思路: 
application.properties中配置通用内容,并设置spring.profiles.active=dev,以开发环境为默认配置 
application-{profile}.properties中配置各个环境不同的内容 
通过命令行方式去激活不同环境的配置

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

Gradle配置SpringBoot多环境打包

Gradle配置SpringBoot多环境打包

Gradle配置SpringBoot多环境打包

springboot 多环境配置和切换

「快学springboot」SpringBoot多环境配置文件

Springboot多环境下多个配置文件规范配置方案