SpringBoot内嵌tomcat(2)【Tomcat的启动入口】源码简析

编程

在springboot支持Web模式下启动加载 ApplicationContext 是:
org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext   extends org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext 。

超类是 org.springframework.context.support.AbstractApplicationContext !其 核心处理refresh() 方法中,先onRefresh() 再 finishRefresh()。

org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext

  1. 重写 onRefresh():   创建org.springframework.boot.web.server.WebServer

    createWebServer 方法:获取实现接口 org.springframework.boot.web.servlet.server.ServletWebServerFactory (org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory)的实例来创建WebServer实例org.springframework.boot.web.embedded.tomcat.TomcatWebServer。
  2. 重写子方法 finishRefresh():  启动WebServer。

    实际是 org.springframework.boot.web.embedded.tomcat.TomcatWebServer.start()

​​​​​​内置多种容器: (文章说 Undertow 并发吞吐能力Tomcat 更优。 https://mp.weixin.qq.com/s/lfMcOMZo7Wg5lGOn0Pn8Ww)

以上是 SpringBoot内嵌tomcat(2)【Tomcat的启动入口】源码简析 的全部内容, 来源链接: utcz.com/z/514892.html

回到顶部