7.1 为什么需要
我们开发的代码有可能需要运行在多个环境,比如我们的代码需要开发测试,测试人员测试,上线等环境,而每个环境
是不相同的,所以需要进行不同的配置。
7.2 定义方式
定义多个环境整体实现有两种,一种是在一个配置文件配置所有的环境,另一种是多个配置文件中分别配置对应的环境。
7.2.1单文件配置方式
---
server:
port: 8081
spring:
profiles: dev #开发环境
application:
name: springbootconfigdev
---
server:
port: 8082
spring:
profiles: test #测试环境
application:
name: springbootconfigtest
---
server:
port: 8083
spring:
profiles: prod #线上环境
application:
name: springbootconfigprod
7.2.2 多文件配置方式
-
创建三个文件 application-dev.yml,application-test.yml,application-prod.yml,结构入下图:
application-dev.yml
server: port: 8081 spring: application: name: springbootconfigdev
application-test.yml
server: port: 8082 spring: application: name: springbootconfigtest
application-prod.yml
server: port: 8083 spring: application: name: springbootconfigprod
7.3 运行时指定环境
-
默认启动
就是运行时没有指定要启动那个环境时,默认是用的环境,这个需要配置在application.yml中。
spring: application: name: springboot-multienv-config-test profiles: active: dev #默认激活开发
-
开发时指定
开发时,我们可以在idea中设置需要启动环境。
-
部署时指定
springboot项目打包部署时,在启动时可以指定要运行的环境。具体命令如下:
java -jar spring-boot-02-config-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod;
7.3 小结
本章节主要讲了,springboot多环境配置