springboot多环境配置文件

一、首先建立3个配置文件,文件名称分别为application.yml、application-dev.yml和application-prod.yml

springboot多环境配置文件

二、文件内容分别为下图所示

springboot多环境配置文件springboot多环境配置文件springboot多环境配置文件

三、建立一个控制器来检查使用配置的情况。

springboot多环境配置文件

四、一些总结的结论

1、可以通过更改默认的配置文件(application.yml)中的spring.profiles.active来实现切换不同环境的配置文件。

2、也可以通过启动命令中配置参数来实现读取不同的环境的配置文件,优先级高于更改默认配置文件中的spring.profiles.active,命令如下

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

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

3、如果默认配置文件中有值,同时其余环境配置(application-dev.yml)中也有此变量值,那么其余环境中的变量值会覆盖默认配置文件中的值。

4、如果其余环境配置(application-dev.yml)中无变量值则会读取默认配置中的值。

 

这里是多文件区分不同环境的配置信息,也可以使用一个文件来实现不同环境的配置信息。

name: hehe
age: 0
---
spring:
  profiles: dev
name: haha
age: 10
---
spring:
  profiles: prod
name: xixi

不同环境的配置信息使用 --- 符号分隔开,需要注意,分隔开的配置文件中是spring.profiles,一定不要加action,加action,你会发现,执行命令加参数无效,且会读取最后面的配置信息。比如age会是10,name会是xixi。

而且不同环境的变量值必须在最上面出现,如果最上面缺少age或者name,都会生成失败。

转载于:https://my.oschina.net/uwith/blog/3037098