springboot中application.yml和bootstrap.yml文件的区别

bootstrap.yml是先头文件,在application.yml之前读取。

实际用途之一:

在启动nacos管理的程序时,首先读取nacos上的配置文件,再读取本地的配置文件(application.yml),需要将nacos上的配置文件和代码本地的yml文件整合使用,那就有一个问题,nacos的地址都是在本地配置文件的application.yml文件中的,所以此时需要先读取nacos上的配置文件的话,是无法实现的,因此就出现了bootstrap.yml文件,该文件里面配置了服务名、环境变量(dev、test、prod这种)和nacos的地址,因此当启动项目时,先读取bootstrap.yml文件,获取到nacos地址,就可以做到先读取nacos的配置文件,再和本地配置文件整合的效果了。

避坑:

这里使用bootstrap.yml文件时报错,需要加上依赖bootstrap的支持依赖,真服了

<!--开启Spring Cloud 应用程序启动时加载bootstrap配置文件-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-bootstrap</artifactId>
    <version>3.1.4</version>
</dependency>

还有一点是,如果在bootstrap.yml、本地application.yml、nacos配置文件中都写了端口号的,比如:

server:
  port: 8080

 最先生效的应该是nacos配置文件的端口,然后才是本地application.yml的,只有当前两个都没写时,才会去bootstrap.yml读取,别问为什么,因为我试过,这个最开始取得bootstrap.yml文件中nacos地址是有区别的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

何怀逸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值