一、首先建立3个配置文件,文件名称分别为application.yml、application-dev.yml和application-prod.yml
二、文件内容分别为下图所示
三、建立一个控制器来检查使用配置的情况。
四、一些总结的结论
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,都会生成失败。