个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~
SpringBoot —— 多环境开发
一、多环境开发 —— yaml格式
单配置文件、多环境(共享配置文件)
- 配置文件中,使用
---
分隔不同的环境,从而实现多环境 - 划分出一块环境,作为设置公共配置的应用环境,在当中指定应用哪个环境中的属性配置。
# 这里是公共配置
# 设置应用哪个环境(这里应用dev环境)
spring:
profiles:
active: dev
---
# 假设这是生产环境
# 过时格式设置环境
spring:
profiles: pro
# 具体参数设置
server:
port: 80
---
# 假设这是开发环境
# 标准格式设置环境
spring:
config:
activate:
on-profile: dev
# 具体参数设置
server:
port: 81
---
# 假设这是测试环境
# 推荐使用此格式(标准格式)
spring:
config:
activate:
on-profile: test
# 具体参数设置
server:
port: 82
小结
:
- 多环境开发需要设置若干种常用的环境,例如开发环境、生产环境、测试环境
- yaml格式中设置多环境,使用
---
区分环境,设置边界 - 每种环境的区别在于加载的配置属性不同
- 启动某种环境时,需要指定启动时使用的环境
多配置文件、多环境(独立配置文件)
- 主配置文件中设置公共配置 —— 全局
- 环境分类配置文件中常用于配置冲突属性 —— 局部
- 主启动配置文件
application.yml
:
# 设置应用哪个环境(这里应用dev环境)
spring:
profiles:
active: dev
- 使用
include属性
在激活指定环境的情况下,可以同时对多个环境进行加载使其生效,多个环境间使用逗号分隔:
spring:
profiles:
active: dev
include: test,pro
# 这样书写,文件的加载顺序是:test 》 pro 》 dev
# 当主环境dev与其他环境有相同属性时,主环境属性失效;其他环境中有相同的属性时,最后加载的环境属性生效
- 环境分类配置文件
application-pro.yml
:
server:
port: 80
- 环境分类配置文件
application-dev.yml
:
server:
port: 81
- 环境分类配置文件
application-test.yml
:
server:
port: 82
小结
:
- 可以使用独立配置文件定义环境属性
- 独立配置文件便于线上维护更新并保障系统安全性
二、多环境开发 —— properties格式
- properties文件多环境配置仅支持多文件格式
- 主配置文件中设置公共配置 —— 全局
- 环境分类配置文件中常用于配置冲突属性 —— 局部
- 主启动配置文件
application.properties
:
# 设置应用哪个环境(这里应用test环境)
spring.profiles.active=test
- 环境分类配置文件
application-pro.properties
:
server.port=80
- 环境分类配置文件
application-dev.properties
:
server.port=81
- 环境分类配置文件
application-test.properties
:
server.port=82
三、多环境分组管理
- 使用
include属性
在激活指定环境的情况下,可以同时对多个环境进行加载使其生效,多个环境间使用逗号分隔 - 当主环境dev与其他环境有相同属性时,主环境属性失效;其他环境中有相同的属性时,最后加载的环境属性生效