spring-boot 速成(5) profile区分环境-阿里云开发者社区

开发者社区> 开发与运维> 正文

spring-boot 速成(5) profile区分环境

简介: maven中的profile概念,在spring-boot中一样适合,只要约定以下几个规则即可:  一、不同环境的配置文件以"application-环境名.yml"命名 举个粟子: 如果有二个环境dev、prod,项目工程中有上述二个文件即可。

maven中的profile概念,在spring-boot中一样适合,只要约定以下几个规则即可: 

一、不同环境的配置文件以"application-环境名.yml"命名

举个粟子:

如果有二个环境dev、prod,项目工程中有上述二个文件即可。

 

二、主配置文件application.yml中,显式激活某个环境

这样默认就激活了dev环境

 

三、与环境相关的差异配置部分,放在各自的配置文件中

举第二个粟子

 

四、线上部署/运行时动态环境切换

通常开发阶段默认激活的是dev环境,部署到线上时是prod环境,但是打包发布时,可能经常会忘记了改application.yml中的默认激活环境,可以参考下面的几种做法:

4.1 参考上一节的做法,部署时在./config下放置一个application.yml来覆盖默认的激活环境(这个可以在打包一键部署的shell脚本中自动处理)

4.2 启动shell脚本中,动态指定,例如 java -jar spring-boot-web-demo-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod

4.3 也可以参考gradle项目中profile的通用做法(见之前的文章: gradle项目中profile的实现

推荐用4.2的做法,简单!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章