SpringMVC DispatcherServlet组件实现解析

网友投稿 650 2023-06-20

SpringMVC DispatcherServlet组件实现解析

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小时内删除侵权内容。

上一篇:SpringIOC DI循环依赖实例详解
下一篇:Spring Boot Actuator执行器运行原理详解
相关文章

 发表评论

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