springBoot多环境切换

一.多环境配置的好处:

1.不同环境配置可以配置不同的参数,不用来回改参数

2.便于部署,提高效率,减少出错

二.properties多环境配置

application.properties配置激活环境

spring.profiles.active=dev

dev、pro、test配置端口分别为(注:默认端口为8080)

server.port=8081  #dev

server.port=8082  #pro

server.port=8083  #test

启动结果

生成jar包命令启动配置

命令行:

java -jar XXX.jar --spring.profiles.active=dev

虚拟机参数配置

java -Dspring.profiles.active=dev -jar XXX.jar

YAML多环境配置

1.配置激活选项

spring:
     profiles:
        active: dev 

2.在配置文件添加三个英文状态下的短横线即可区分

---
spring:
   profiles: dev

application.yml

#激活哪一个环境的配置文件
spring:
  profiles:
    active: dev
#公共配置
spring:
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
---
spring:
  profiles: dev
server:
  port: 8081
---
spring:
  profiles: pro
server:
  port: 8082
---
spring:
  profiles: test
server:
  port: 8083

这种情况是报错的:Duplicate key: spring

正确的配置:

#激活哪一个环境的配置文件
#公共配置
spring:
  profiles:
    active: prd
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss
---
spring:
  profiles: dev
server:
  port: 8081
---
spring:
  profiles: test
server:
  port: 8082
---
spring:
  profiles: prd
server:
  port: 8083

.两种配置方式的比较

1. Properties配置多环境,需要添加多个配置文件,YAML只需要一个配件文件

yml文件本身具有区分不同环境的能力

2.书写格式的差异,yaml相对比较简洁,优雅

3. YAML的缺点:不能通过@PropertySource注解加载。如果需要使用@PropertySource注解的方式加载值,那就要使用properties文件。

猜你喜欢

转载自blog.csdn.net/liu911025/article/details/81489117