目录
1.yaml格式单文件
#应用环境
#公共配置
spring:
profiles:
active: dev
---
#生产环境
spring:
profiles: pro
server:
port: 81
---
#开发环境
spring:
profiles: dev
server:
port: 82
---
#测试环境
spring:
profiles: test
server:
port: 83
2.yaml格式多文件
首先先创建application-dev.yml application-pro.yml application-test.yml
application.yml
#应用环境 #公共配置 spring: profiles: active: dev
application-deb.yml
server: port: 81
application-pro.yml
server: port: 82
application-test.yml
server: port: 83
3.properties格式多文件
创建application.properties application-dev.properties application-pro.properties application-test.properties
application.properties
spring.profiles.active=dev
application-dev.properties
server.port=81
application-pro.properties
server.port=82
application-test.properties
server.port=83
4.多环境分组管理
根据功能对配置文件中的信息进行拆分,并制作为独立的配置文件 命名规则如下:
application-devDB.yml
application-devRedis.yml
application-devMVC.yml
使用include属性在指定环境下 同时对多个环境进行加载使其生效,多个环境使用,进行分隔
spring: profiles: active: dev include: devDB,devRedis,devMVC
注意事项:当主环境dev与其他环境有相同属性时,主环境属性生效,其他环境有相同属性时,最后加载的环境属性生效
5.多环境开发控制
maven中设置多环境属性
<!--设置多环境--> <profiles> <profile> <id>env_dev</id> <properties> <profile.active>dev</profile.active> </properties> <activation> <!--默认启动--> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>env_pro</id> <properties> <profile.active>pro</profile.active> </properties> </profile> </profiles>
springboot与引用maven属性
spring: profiles: active: @profile.active@ group: "dev": devDB,devMVC "pro": proDB,proMVC
总结
1.多环境开发需要设置若干种常用环境,例如开发、生产、测试环境
2.yaml格式中设置多环境使用--区分环境设置边界
3.每种环境的区别在于加载的配置不同
4.启用某种环境需要指定启动时使用该环境
5.properties只支持多文件格式
6.当maven与springboot同时对多环境进行控制时,以maven为主 springboot使用@
..@占位符读取maven对应的配置属性值
7.基于springboot读取maven配置属性的前提下,如果在idea下测试pom.xml每次更新需要手动complie