因为要在开发环境、测试环境和生产环境中写代码,可能各个环境配置并不相同。比方说服务器配置,端口配置等。现在以配置端口为例。说明配置多环境配置的三种方法:
首先,要在pom.xml文件里导入web依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
1、环境配置代码量少,可以都写在一个yml文件里。
#通用信息,指定生效的环境
#多环境下共性的属性
#如果特定环境的配置和通用信息相冲突,特定环境中的配置生效
#这是多环境配置的其中一种配置
spring:
profiles:
active: pro
server:
servlet:
context-path: /abc
---
#开发模式
spring:
config:
activate:
on-profile: dev
server:
port: 7750
---
#测试模式
spring:
config:
activate:
on-profile: test
server:
port: 7751
---
#生产模式
spring:
config:
activate:
on-profile: pro
server:
port: 7752
环境分隔用三个---分隔,spring.profiles.active:指定激活环境配置。特定环境变量配置优先级别最高。
2、多环境配置代码量多,可以分别写环境配置,编写规则是application-环境名.yml。在appliction.yml里指定激活环境配置
开发环境:application-dev.yml
server:
port: 1001
测试环境:application-test.yml
server:
port: 1012
生产环境:application-pro.yml
server:
port: 1002
调用application.yml,多环境共用属性也写在此。
#多环境共用属性配置
#指定生效环境配置
#这是第二种多环境属性配置
spring:
profiles:
active: test
server:
servlet:
context-path: /aggc
3、多环境profiles分组配置
当环境配置服务配置一组,数据源配置一组,自定义配置一组时,可以采用分组配置:
创建配置yml文件,文件名规则是application-配置名.yml。在application.yml中指定调用配置
spring:
profiles:
active: dev
group:
"dev": devServer,devDB,devSelf