当前位置:   article > 正文

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

application.yml跟bootstarp.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地址是有区别的。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/708511
推荐阅读
相关标签
  

闽ICP备14008679号