SpringBoot核⼼配置⽂件bootstrapapplication详解。
⽤过 Spring Boot 的都知道在 Spring Boot 中有以下两种配置⽂件
bootstrap (.yml 或者 .properties)
application (.yml 或者 .properties)
为什么会有这两种配置⽂件呢?⼤家都清楚它们的区别和具体使⽤场景吗?
bootstrap/ application 的区别
bootstrap项目
特意去翻了下 Spring Boot 的官⽅⽂档,没有到关于这两种⽂件的具体定义,然后再翻了下 Spring Cloud 的官⽅⽂档到了它们的区别。
认真阅读了下⽂档,原⽂⼤概意思是这样。
Spring Cloud 构建于 Spring Boot 之上,在 Spring Boot 中有两种上下⽂,⼀种是 bootstrap, 另外⼀种是 application, bootstrap 是应⽤程序的⽗上下⽂,也就是说 bootstrap 加载优先于 applicaton。bootstrap 主要⽤于从额外的资源来加载配置信息,还可以在本地外部配置⽂件中解密属性。这两个上下
⽂共⽤⼀个环境,它是任何Spring应⽤程序的外部属性的来源。bootstrap ⾥⾯的属性会优先加载,它们默认也不能被本地相同配置覆盖。
因此,对⽐ application 配置⽂件,bootstrap 配置⽂件具有以下⼏个特性。
boostrap 由⽗ ApplicationContext 加载,⽐ applicaton 优先加载
boostrap ⾥⾯的属性不能被覆盖
bootstrap/ application 的应⽤场景
application 配置⽂件这个容易理解,主要⽤于 Spring Boot 项⽬的⾃动化配置。
bootstrap 配置⽂件有以下⼏个应⽤场景。
使⽤ Spring Cloud Config 配置中⼼时,这时需要在 bootstrap 配置⽂件中添加连接到配置中⼼的配置属性来加载外部配置中⼼的配置信息;
⼀些固定的不能被覆盖的属性
⼀些加密/解密的场景;
以下这个截图是⼀个国外⽹友问了⼀个 Spring Cloud ⼯程师得到的回答。
做过 Spring Cloud 微服务的朋友应该对 bootstrap 的应⽤⼗分清楚,我们也有 Spring Cloud 的实战教程,在 Spring 专题中都能看到。
推荐:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。