SpringBoot源码分析之bootstrap

看本文之前最好看下我前面讲解的SpringBoot中的监听机制。

2.1 BootstrapApplicationListener

在使用bootstrap.properties文件时我们需要映入相关的依赖

image.png

其实在这个依赖中会在对应的spring.factories文件中给我们提供新的监听器,也就是BootstrapApplicationListener监听器。

image.png

而BootstrapApplicationListener监听触发的事件是ApplicationEnvironmentPreparedEvent事件,这个事件其实和我们前面介绍监听application.properties的时候的监听器ConfigFileApplicationListener监听的是同一个事件。

image.png

image.png

如果你看了前面的文章,那么此处你会觉得有点眉目了。也就是当启动的时候发布对应的事件,该监听器会触发相关的解析行为。

2.2 启动流程梳理

搞清楚了监听器的关系后,我们来看下启动的流程代码具体是怎么执行的。

image.png

image.png

直接进入

image.png

在SpringApplication的构造方法中我们要注意两点,1.监听器的加载 2.main方法的主类记录

image.png

然后回来进入run方法

image.png

image.png

Debug到第一个端点。

image.png

然后我们放过。

GIF.gif

通过上面的动图可以看到又进入了一次这个run方法。先看处理的结果。

image.png

然后我们再放过,继续

image.png

分两次加载,有先右后哦。那么这里面的第一个加载的原理到底是什么呢?继续来分析。

2.3 bootstrap.properties的加载原理

接下来看看是如果出现的一个父context来优先加载我们的bootstrap.properteis文件的,还是从这个图开始

image.png

image.png

链路如上面一步步跟踪即可。

image.png

跳过非关键的,直接进入到BootstrapApplicationListener中来看。

image.png

然后进入到 bootstrapServiceContext方法中。

最后

即使是面试跳槽,那也是一个学习的过程。只有全面的复习,才能让我们更好的充实自己,武装自己,为自己的面试之路不再坎坷!今天就给大家分享一个Github上全面的Java面试题大全,就是这份面试大全助我拿下大厂Offer,月薪提至30K!

我也是第一时间分享出来给大家,希望可以帮助大家都能去往自己心仪的大厂!为金三银四做准备!
一共有20个知识点专题,分别是:

Dubbo面试专题

JVM面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Java并发面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Kafka面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MongDB面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MyBatis面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

MySQL面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Netty面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

RabbitMQ面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Redis面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

Spring Cloud面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

SpringBoot面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

zookeeper面试专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

常见面试算法题汇总专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

计算机网络基础专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

设计模式专题

这个GItHub上的Java项目开源了,2020最全的Java架构面试复习指南

[外链图片转存中…(img-9wVfTtOB-1714464850141)]

常见面试算法题汇总专题

[外链图片转存中…(img-jjoP826B-1714464850141)]

计算机网络基础专题

[外链图片转存中…(img-qlCTCzAP-1714464850141)]

设计模式专题

[外链图片转存中…(img-eehfDwcD-1714464850142)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值