我们知道SpringBoot有两个全局配置application.properties
和application.yml
,我们想要什么配置的时候,就可以按需在里面配置.
但有时候我们开发、测试和生产所需要的配置都是不一样的,难道我们每经过一个阶段都要去自己修改配置文件吗?
当然不是啦,好在SpringBoot为我们提供了多profile的支持,今天我们就来介绍一下怎么去使用它
SpringBoot完成多profile有两种方式,一种是基于properties
,一种是基于yml
1. 基于properties
- 假若我们需要生产环境的配置文件(别的环境同理),我们可以创建名为
application-dev.properties
的文件,并在其里面配置即可。
2.基于yml
- yml可以采用上面的方式,新建一个
application-dev.yml
的文件,并在其里面配置。 - yml还支持多文档快格式,例:
server:
port: 8081
spring:
profiles:
active: prod
---
server:
port: 8083
spring:
profiles: dev
---
server:
port: 8084
spring:
profiles: prod #指定属于哪个环境
配置好各环境的配置后,我们要让它生效吧?
3.激活指定的profile
1、在总配置文件中指定 spring.profiles.active=dev
2、命令行:
java -jar spring-boot.jar --spring.profiles.active=dev;
可以直接在测试的时候,配置传入命令行参数
3、虚拟机参数;
-Dspring.profiles.active=dev