Spring Boot 配置加载顺序详解

使用 Spring Boot 会涉及到各种各样的配置,如开发、测试、线上就至少 3 套配置信息了。Spring Boot 可以轻松的帮助我们使用相同的代码就能使开发、测试、线上环境使用不同的配置。

在 Spring Boot 里面,可以使用以下几种方式来加载配置。本章内容基于 Spring Boot 2.0 进行详解。

1、properties文件;

2、YAML文件;

3、系统环境变量;

4、命令行参数;

等等……

配置属性加载的顺序如下:

Spring Boot 配置加载顺序详解

数字小的优先级越高,即数字小的会覆盖数字大的参数值,我们来实践下,验证以上配置参数的加载顺序。

1、在主应用程序中添加 Java 系统参数

Spring Boot 配置加载顺序详解

2、在 application.properties 文件中添加属性。

Spring Boot 配置加载顺序详解

3、在 application-dev.properties 文件中添加属性。

Spring Boot 配置加载顺序详解

4、添加测试类

Spring Boot 配置加载顺序详解

运行 test 单元测试,程序输出:

Spring Boot 配置加载顺序详解

根据以上参数动态调整,发现参数会被正确被覆盖。了解了 Spring Boot 各种配置的加载顺序,如果配置被覆盖了我们就知道是什么问题了。

原文地址:https://mp.weixin.qq.com/s/tFrRMM25LVE_2AG23lK5qQ