springboot不加载bootstrap.properties文件

Posted 0o飞行天下o0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot不加载bootstrap.properties文件相关的知识,希望对你有一定的参考价值。

1、首先说一下官网对bootstrap和application两种配置文件的区别:

  Spring Cloud 构建于 Spring Boot 之上,在 Spring Boot 中有两种上下文,一种是 bootstrap, 另外一种是 application, bootstrap 是应用程序的父上下文,也就是说 bootstrap 加载优先于 applicaton。bootstrap 主要用于从额外的资源来加载配置信息,还可以在本地外部配置文件中解密属性。这两个上下文共用一个环境,它是任何Spring应用程序的外部属性的来源。bootstrap 里面的属性会优先加载,它们默认也不能被本地相同配置覆盖

2、实际中,我遇到的情况是,我单独使用的springboot,不会去加载bootstrap命名的配置文件,而会加载application命名的配置文件,和官方解释有点出入,没找到原因。

3、springcloud使用时,如果要使用注册中心一类的配置,比如consul注册,这样就需要使用bootstrap命名的配置文件,这样才能读到相应配置信息。当然如果是一些公共配置,等项目运行起来后都会去加载。

4、看到网上很多人对这俩区别的根本原因是,加载类不同,一个是父级context,一个是context。我猜想,正式因为springboot和springcloud是不同功能的框架,所以在加载配置信息时也是有区别的。所以综合来说,使用springboot就用application,使用springcloud就用bootstrap,也可能会有混合使用的情况,现在会用就行了。若有大神有更详细的讲解,还望指导一下。

5、springboot版本是1.5.2。

以上是关于springboot不加载bootstrap.properties文件的主要内容,如果未能解决你的问题,请参考以下文章

Springboot 排除不想加载的配置

SpringBoot项目静态图片加载浏览器不显示问题解决方案

SpringBoot 项目不加载 application.properties 配置文件

SpringBoot配置加载 SpringBoot配置加载解析时机原理

springboot启动不需要加载数据库

springboot启动不需要加载数据库