每个Spring Boot项目都有一个主程序启动类,在主程序启动类中有一个启动项目的main()方法, 在该方法中通过执行SpringApplication.run()即可启动整个Spring Boot程序。 问题:那么SpringApplication.run()方法到底是如何做到启动Spring Boot项目的呢? 下面我们查看run()方法内部的源码,核心代码具体如下
从源码中可以看出启动分成了 初始化和启动两部分
1. SpringApplication实例的初始化
标红的部分源码主要是利用
SpringFactoriesLoader从META-INF/spring.factories类路径下的META-INF下的spring.factores文件中 获取所有可用的应用初始化器类ApplicationContextInitializer以及ApplicationListener 2. 项目的初始化启动标签:初始化,run,springboot,启动,Boot,SpringApplication,源码 From: https://www.cnblogs.com/yumx/p/17444078.html