profile是Spring对不同环境提供不同配置功能的支持,可以通过激活不同的环境版本,实现快速切换环境
一、多环境切换
1、properties配置切换
SpringBoot默认使用application.properties配置文件,当有多个测试开发环境时,可以使用spring.profiles.active
来指定当前的配置
当前指定的是使用test
环境,使用的是8083端口
2、yaml多环境切换
server:
port: 8081
spring:
profiles:
active: pro
---
server:
port: 8082
spring:
profiles: dev
---
server:
port: 8083
spring:
profiles: test
---
server:
port: 8084
spring:
profiles: pro
注意:如果yml和properties同时都配置了端口,并且没有激活其他环境 , 默认会使用properties配置文件的!
二、配置文件加载优先级
springboot会扫描application.properties,application.yaml配置文件,并将其全部加载到内存中
- –file:./config/
- –file:./
- –classpath:/config/
- –classpath:/
优先级1:项目路径下的config文件夹配置文件
优先级2:项目路径下配置文件
优先级3:资源路径下的config文件夹配置文件
优先级4:资源路径下配置文件
按照此路径顺序加载文件,优先级从高到低,如果高优先级有的配置优先使用高优先级,没有的则使用低优先级,当高优先级配置与低优先级配置冲突时,高优先级配置则会覆盖低优先级