Spring Boot多环境配置 yaml+properties

目录

1.yaml格式单环境

2.properties格式

3.总结


1.yaml格式单文件

#应用环境
#公共配置

spring:
  profiles:
    active: dev

---
#生产环境
spring:
  profiles: pro
server:
  port: 81



---
#开发环境
spring:
  profiles: dev
server:
  port: 82


---
#测试环境
spring:
  profiles: test
server:
  port: 83

2.yaml格式多文件

首先先创建application-dev.yml  application-pro.yml application-test.yml

Spring Boot多环境配置 yaml+properties_第1张图片

application.yml

#应用环境
#公共配置

spring:
  profiles:
    active: dev

application-deb.yml

server:
  port: 81

application-pro.yml

server:
  port: 82

application-test.yml

server:
  port: 83

3.properties格式多文件

创建application.properties  application-dev.properties  application-pro.properties  application-test.properties 

Spring Boot多环境配置 yaml+properties_第2张图片

application.properties

spring.profiles.active=dev

 application-dev.properties 

server.port=81

 application-pro.properties  

server.port=82

application-test.properties 

server.port=83

4.多环境分组管理

根据功能对配置文件中的信息进行拆分,并制作为独立的配置文件 命名规则如下:

application-devDB.yml

application-devRedis.yml

application-devMVC.yml

使用include属性在指定环境下 同时对多个环境进行加载使其生效,多个环境使用,进行分隔

spring:
  profiles:
    active: dev
    include: devDB,devRedis,devMVC

注意事项:当主环境dev与其他环境有相同属性时,主环境属性生效,其他环境有相同属性时,最后加载的环境属性生效

5.多环境开发控制

maven中设置多环境属性


   
      env_dev
      
         dev
      
      
         
         true
      
   
   
      env_pro
      
         pro
      
   

springboot与引用maven属性

spring:
  profiles:
    active: @profile.active@
    group:
      "dev": devDB,devMVC
      "pro": proDB,proMVC

总结

1.多环境开发需要设置若干种常用环境,例如开发、生产、测试环境

2.yaml格式中设置多环境使用--区分环境设置边界

3.每种环境的区别在于加载的配置不同

4.启用某种环境需要指定启动时使用该环境

5.properties只支持多文件格式

6.当maven与springboot同时对多环境进行控制时,以maven为主 springboot使用@

..@占位符读取maven对应的配置属性值

7.基于springboot读取maven配置属性的前提下,如果在idea下测试pom.xml每次更新需要手动complie

你可能感兴趣的:(spring,boot,spring,java)