springboot的工作原理

承接springmvc的工作原理,这里探讨springboot是如何工作的,由springboot的启动类SpringbootdemoSimpleApplication.java开始,我们知道,如果想把springboot的项目打包放到tomcat里运行,需要将启动类继承SpringBootServletInitializer

public class SpringbootdemoSimpleApplication extends SpringBootServletInitializer{

因为SpringBootServletInitializer是继承WebApplicationInitializer的

public abstract class SpringBootServletInitializer implements WebApplicationInitializer {

在springmvc中,WebApplicationInitializer 就是启动类,原理是通过servlet的特性进行加载的,所以我们需要导入servlet的依赖包,并排除springboot内置的tomcat包

    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <!-- 排除内置容器,排除内置容器导出成war包可以让外部容器运行spring-boot项目-->
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.0</version>
            <scope>provided</scope>
        </dependency>

注解@SpringBootApplication是springboot启动的关键注解,该注解下有@EnableAutoConfiguration注解,开启自动配置,会把相关的配置类加载到spring容器中,而这些配置类的全类名,就在文件spring.factories下


image.png

比如WebMvcAutoConfiguration就是springmvc的配置类,加载此配置类,就相当于普通的springmvc项目的springmvc-servlet.xml配置。

总结

本文以springmvc为引入点,说明一个普通的springboot项目整合过程,关于springboot的更加详细的原理剖析参考文章: springboot之启动原理解析及源码阅读

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • https://github.com/cuzz1/springboot-learning 四、Web开发 1、简介...
    cuzz_阅读 7,083评论 0 5
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,495评论 11 349
  • SpringBoot--Web篇<一>SpringBoot--Web篇<二>SpringBoot--Web篇<三>...
    i_cyy阅读 5,138评论 3 1
  • 本文从API角度入手,带你了解SpringMVC启动的原理。 ServletContainerInitialize...
    南桥畂翊阅读 11,170评论 1 14
  • 以前 家有青山绿水 家有瓜果渔桑 还有 叮咛声声 后来 叮咛声声 声声叮咛 终究消逝 在天的尽头 从此 仰望苍穹 ...
    宁静琴思阅读 1,535评论 0 2

友情链接更多精彩内容