缘起
在前面几章的讲解中,我们知道,当我们执行以下代码时,springboot会启动一个内置的tomcat,并且加载对应的starter.那么如果我们不采用java -jar的方式启动springboot的应用,他也就没有去执行run方法,那么他又是如何做到自动装配的呢?
SpringBoot通过war的方式是如何启动的
关于SPI
在说这些之前,我们先要了解一个东西,SPI。关于SPI可以去了解我的另一篇文章
Java SPI 机制详解
SPI在springboot中的应用
我们看spring-web这个项目的spi文件javax.servlet.ServletContainerInitializer
文件内容如下
org.springframework.web.SpringServletContainerInitializer
SpringServletContainerInitializer
代码如下