profile是Spring对不同环境提供不同配置功能的支持,可以通过激活不同的环境版本,实现快速切换环境;
多配置文件(yaml和properties同理)
我们在主配置文件编写的时候,文件名可以是 application-{profile}.properties/yml , 用来指定多个环境版本;
例如:
application.yaml
server:
port: 8083
application-one.yaml
server:
port: 8084
application-second.yaml
server:
port: 8085
初次运行,如果不做任何配置,SpringBoot启动会默认的寻找默认的配置环境也就是application.yaml
这是时候如果想切换其他环境,那么需要一个在默认环境下设定一个配置来激活其他需要的环境。
application.yaml
server:
port: 8083
#比如在配置文件中指定使用one环境,我们可以通过设置不同的端口号进行测试;
#我们启动SpringBoot,就可以看到已经切换到one下的配置了;
spring:
profiles:
active: one
yaml的多文档化(优势所在)
使用yml去实现不需要创建多个配置文件,更加方便,是properties无法达到的境界。
server:
port: 8081
#选择需要激活的环境。这里选择second
spring:
profiles:
active: second
---
server:
port: 8082
spring:
profiles: one #配置环境的名称
---
server:
port: 8083
spring:
profiles: second #配置环境的名称
注意:如果yml和properties同时都配置了端口,并且没有激活其他环境 , 默认会使用properties配置文件的!