多环境配置
多环境配置指的是在不同的环境下(开发环境、测试环境、生产环境)配置参数是不一样的,因此可以为不同的环境配置不同的参数
方式一:使用“---”分离不同环境
# 测试环境
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