SpringCloud中application.yml和bootstrap.yml区别说明

重生 Spring Cloud 发布时间:2024-01-28 10:56:38 阅读数:2304 1
下文笔者讲述SpringCloud中application.yml和bootstrap.yml的区别说明,如下所示

application和bootstrap简介

application.yml和properties文件
   都是配置文件
   功能一致
application.yml和bootstrap.yml的区别为:
   application和bootstrap的加载顺序。
      Bootstrap.yml(bootstrap.properties)在application.yml(application.properties)之前加载
        就像application.yml一样
         但是用于应用程序上下文的引导阶段

两者常见的应用场景

当使用Spring Cloud Config Server
 应该在 bootstrap.yml里面指定 spring.application.name和spring.cloud.config.server.git.uri

 一些加密/解密的信息
   技术上
     bootstrap.yml由父Spring ApplicationContext加载
      父ApplicationContext被加载到使用application.yml的之前
   当使用Spring Cloud时
      配置信息一般是从config server加载
      为获取得配置信息(如密码等)
       需要一些提早的或引导配置
          因此,把 config server 信息放在 bootstrap.yml,用来加载真正需要的配置信息。

属性覆盖说明

启动上下文时
  Spring Cloud会创建一个Bootstrap Context
  作为Spring应用的Application Context的父上下文
  初始化的时
   Bootstrap Context负责从外部源加载配置属性并解析配置
   这两个上下文共享一个从外部获取的Environment
   Bootstrap属性有高优先级
   默认情况下,它们不会被本地配置覆盖
    Bootstrap context和Application Context有着不同的约定
    所以新增了一个bootstrap.yml文件
    而不是使用application.yml (或者application.properties)
    保证Bootstrap Context和Application Context配置的分离
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaFramework/SpringCloud/202401/7822.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者