先调用main方法里面的run方法
进入run方法可以看到run方法一共有两个,我们用的是第二个,因为run方法里面传入的有参数,传入的是main的类,这个类也是配置类,因为这个类上面有
@SpringBootApplication
这个注解里面又有compent注解,偏离正题了,再回来
run方法返回SpringApplication这个类,我们进入这个类再看看
这个类里面初始化一个spring容器,然后再找到监听器,再这两个洪宽之前的方法是判断项目类型
这个方法是找main方法在哪个类,也就是找项目的主类,入口
总结一下springboot的启动过程
第一:run方法先传入类
第二:推测应用的类型
第三:获取初始化方法的实现类
第四:获取监听器的实现类
第五:找到main方法所在的类