springmvc启动过程

从DispatcherServlet类层次图可以看出DispatcherServlet具有Servlet基础功能。

Servlet源码中一行注释:

<li>The servlet is constructed, then initialized with the <code>init</code> method.

意思:servlet被构建后会通过init方法进行初始化。

即通过web.xml配置DispatcherServlet最终会触发init方法。

<servlet>
	<servlet-name>dispatcher</servlet-name>
	<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
	<load-on-startup>1</load-on-startup>
	<async-supported>true</async-supported>
</servlet>

<servlet-mapping>
	<servlet-name>dispatcher</servlet-name>
	<url-pattern>*.do</url-pattern>
	<url-pattern>/</url-pattern>
</servlet-mapping>

init方法委托子类的initServletBean初始化>>>>FrameworkServlet.initServletBean

扫描二维码关注公众号,回复: 4064161 查看本文章

而FrameworkServlet.initServletBean又委托给initWebApplicationContext()方法

initWebApplicationContext()有委托给子类的onRefresh(wac)方法即DispatcherServlet.onRefresh方法

猜你喜欢

转载自blog.csdn.net/u012088516/article/details/82257561