SpringBoot 启动类源码解析(一) - 新建一个SpringApplication对象

本文详细解析了SpringBoot启动类中SpringApplication的创建过程,特别是如何判断Web应用类型。通过分析WebApplicationType.deduceFromClasspath()方法,解释了如何依据类路径判断是否为Web项目。此外,还探讨了spring.factories文件在自动装配中的作用,以及获取类加载器和读取配置文件的逻辑。
摘要由CSDN通过智能技术生成

一、启动类 - 新生成一个SpringApplication

以最简单的启动SpringBoot方式为例,

 

跟了两层以后会发现在这个地方使用静态方法创建了一个SpringApplication对象,并调用了它的 run 方法。

 

那我我们先来看下是怎么创建 SpringApplication对象的吧。

刚才这个静态方法下面又封装了一层,传入了一个null的resourceLoader,这个参数一定程度上可以理解为类加载器,传入为null时实际上最后用到类加载器的是线程的默认的,这个后面用到resourceLoader 的时候会讲。

 

再下面一层就是实际构造SpringApplication对象的构造器了。

 

今天我们的目标就是解释一下这个创建过程中每一行在做什么。比较简单的行就直接用注解的方式来说明了。


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值