SpringCloud bootstrap.yml 和application.yml 加载原理

Spring Cloud 官方文档:https://cloud.spring.io/spring-cloud-static/spring-cloud.html


一个Spring Cloud的操作是通过创建“bootstrap”context开始的,它是main application最上层的parent context。开箱机用,它负责载入来自于外部的配置信息(properties),同时在本地解码外部配置文件的properties。所有Spring应用程序都是由2个Context共享来自外部properties的环境Environment。 Bootstrap properties在被加载时具有最高的优先权,所以默认情况下bootstrap properties不会被本地配置覆盖。

bootstrap context 使用不同的方式定位外部配置信息,而不是像main application context那样,所以你可以使用bootstrap.yml 代替 application.yml or application.properties, 最好将外部配置交给bootstrap,并与main context分开。

例如: bootstrap.yml

spring:
  application:
    name: foo
  cloud:
    config:
      uri: ${SPRING_CONFIG_URI:http://localhost:8888}
如果你的application在server端有任何特殊的配置,最好是将spring.application.name设置到bootstrap.yml内,因为bootstrap.yml 不会被本地配置所覆盖。

你也完全可以通过设置系统属性(system properties)spring.cloud.bootstrap.enabled=false, 来禁用bootstrap process。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值