多环境配置

多环境配置指的是在不同的环境下(开发环境、测试环境、生产环境)配置参数是不一样的,因此可以为不同的环境配置不同的参数

方式一:使用“---”分离不同环境

# 测试环境
student:
  userId: 1001
  userName: user1
  age: 20
spring:
  config:
    activate:
      on-profile: test
---
# 开发环境
student:
  userId: 1002
  userName: user2
  age: 21
spring:
  config:
    activate:
      on-profile: dev
---
# 生产环境
student:
  userId: 1003
  userName: user3
  age: 23
spring:
  config:
    activate:
      on-profile: prod

---
# 默认激活其中一种环境
spring:
  profiles:
    active: prod

方式二: 使用多个配置文件来区分不同的环境

多个配置文件的命名要遵循相关的约定,如:application-xxx, 必须以 "application-" 开头,xxx表示环境的名称

application.yml

# 主的配置文件一般用来激活某个配置文件
spring:
  profiles:
    # 激活某个配置
    active: prod

application-test.yml

spring:
  config:
    activate:
      on-profile: test

student:
  userId: 1001
  userName: user1
  age: 20

application-prod.yml

spring:
  config:
    activate:
      on-profile: prod

student:
  userId: 1003
  userName: user3
  age: 23

application-dev.yml

spring:
  config:
    activate:
      on-profile: dev

student:
  userId: 1002
  userName: user2
  age: 21

也可以在运行Jar文件的时候激活某个环境配置,多个参数使用空格隔开

java -jar xxx.jar --spring.profiles.active=prod

多模块配置

如果项目中所有的配置都写在application一个配置文件中,那这个配置文件会显得很臃肿。通常我们可以将配置文件分模块,在主配置类使用包含的方式引入

application-dao.yml

# dao相关配置

applicaton-web.yml

# web相关配置

application.yml

# 主配置文件,将其他配置文件导入(数组)
spring:
  profiles:
   # 方式一
   # include: web,dao
   # 方式二
   include: 
       - web
       - dao
最后修改:2023 年 02 月 20 日
如果觉得我的文章对你有用,请随意赞赏