application.yaml 中 被---分割开的文件,加载顺序是怎样的
时间: 2024-03-30 19:33:26 浏览: 81
在 Spring Boot 应用中,被"---"分割开的 YAML 文件会按照它们在配置文件中出现的顺序依次被加载。在加载配置文件时,Spring Boot 会将多个 YAML 文档合并为一个大的 YAML 文档,然后解析后加载到应用中。
在加载配置文件时,Spring Boot 会按照以下顺序加载配置文件:
1. 首先,会加载默认的配置文件。默认情况下,Spring Boot 会加载 classpath:/application.yml 或 classpath:/application.properties 文件。
2. 然后,会加载激活的配置文件。Spring Boot 会根据应用所处的环境自动激活对应的配置文件。例如,如果应用运行在开发环境,那么 Spring Boot 会自动加载 application-dev.yml 或 application-dev.properties 文件。
3. 最后,会加载额外的配置文件。可以通过 spring.config.additional-location 属性来指定额外的配置文件路径。这些配置文件也可以包含多个 YAML 文档。
在加载配置文件时,如果有相同的属性,后面加载的配置文件会覆盖先加载的配置文件中的属性。因此,如果需要覆盖默认的配置文件中的属性,可以在激活的配置文件或额外的配置文件中重新定义这些属性。
需要注意的是,如果一个配置文件中包含多个 YAML 文档,那么只有第一个 YAML 文档的配置会被加载。如果需要加载其他 YAML 文档,可以使用 Spring Boot 提供的 YamlPropertiesFactoryBean 来手动解析 YAML 文档。
阅读全文