springboot-多环境配置
1创建基本项目
接下来进行了三个测试,每个测试进行前需要把上一个测试产生的文件删除
2 测试多个配置文件的优先级
2.1 创建四个application.yaml配置文件
application.yaml可以存在如下四个位置
2.1.1 file: ./config/
server.port: 8081
2.1.2 file: ./
server.port: 8082
2.1.3 classpath: /config/
server.port: 8083
2.1.4 classpath: /
server.port: 8084
2.2 通过ConfigApplication运行程序,查看启动的端口号
第一次运行结果
说明 file: ./config/ 位置上的优先级最高,我们删掉这个文件重新运行
说明 file: ./ 位置上的优先级第二高,我们删掉这个文件重新运行
说明 classpath: /config/ 位置上的优先级第三,而 classpath: / 最低
2.3 结论
优先级排序: file: ./config/ > file: ./ > classpath: /config/ > classpath: /
3 测试使用properties文件切换环境
3.1 在resources目录下创建两个properties文件
3.1.1 application-test.properties
server.port=8081
3.1.2 application-dev.properties
server.port=8082
3.2 运行程序,查看端口号
没有指定激活哪个配置文件,使用默认的配置.
3.3 创建application.properties
server.port=8083
3.2 重启程序,查看端口号
使用了application.properties里面的配置
3.3 修改application.properties
通过修改application.properties来指定使用哪个文件的配置,注意 = 后面只需要跟 文件名称中 application- 后面的内容即可
# springboot的多环境配置: 可以选择激活哪一个配置文件
spring.profiles.active=test
3.4 重启程序,查看端口号
使用了application-test.properties里面的配置
3.5 修改application.properties
# springboot的多环境配置: 可以选择激活哪一个配置文件
spring.profiles.active=dev
3.6 重启程序,查看端口号
使用了application-dev.properties里面的配置
4 测试使用yaml文件切换环境
4.1 在resources目录下创建application.yaml文件
server:
port: 8081
---
server:
port: 8082
spring:
profiles: dev
---
server:
port: 8083
spring:
profiles: test
4.2 启动程序,查看端口号
使用了最上面的配置
4.3 修改application.yaml文件
server:
port: 8081
spring:
profiles:
active: dev
---
server:
port: 8082
spring:
profiles: dev
---
server:
port: 8083
spring:
profiles: test
修改了文件最上面的代码,指定了dev环境
4.4 重启程序,查看端口号
使用了dev的配置
4.5 修改application.yaml文件
server:
port: 8081
spring:
profiles:
active: test
---
server:
port: 8082
spring:
profiles: dev
---
server:
port: 8083
spring:
profiles: test
修改了文件最上面的代码,指定了test环境
4.6 重启程序,查看端口号
使用了test的配置,说明可以通过修改application.yaml最上面的代码来切换配置环境