SpringMVC DispatcherServlet组件实现解析

网友投稿 259 2023-05-09

SpringMVC DispatcherServlet组件实现解析

tomcat容器启动加载web.xml初始化springmvc相关策略组件

一、WebApplicationContext的层次结构

本来是想研究一下springMVC组件的,结果解决了以前的一个疑问。WebApplicationContext的层次结构

下面是从官网copy的一份web.xml

ContextLoaderListener:初始化一个Root WebApplicationContext:SpringIOC初始化一些中间services+datasouces的Bean

DispatcherServlet:初始化一个Servlet WebApplicationContext:SpringIOC初始化前端controllers+view resovlers+HandleMapping的Bean

父子关系:Servlet WebApplOPkEFDicationContext.setParent(Root WebApplicationContext);子容器找不到就去父容器找。

org.springframework.web.context.ContextLoaderListener

contextConfigLocation

/WEB-INF/app-context.xml

app

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

1

app

/app/*

二、DispatcherServlet的组件

servlet.init()时初始化SpringIOC容器外,还有初始化了一部分SpringMVC组件

/* org.springframework.web.servlet.DispatcherServlet#initStrategies 认识一下*/

protected void initStrategies(ApplicationContext context) {

initMultipartResolver(context);

initLocaleResolver(context);

initThemeResolver(context);

initHandlerMappings(context);

initHandlerAdapters(context);

initHandlerExceptionResolvers(context);

initRequestToViewNameTranslator(context);

initViewResolvers(context);

initFlashMapManager(context);

}

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇: 开源数据平台——为开发者量身定制的数据管理解决方案
下一篇: 数据平台服务:打造智慧企业的核心支撑
相关文章

 发表评论

暂时没有评论,来抢沙发吧~