介绍
这篇文章将为大家详细讲解有关怎么在SpringMVC中实现一个DispatcherServlet组件,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
<强>一、WebApplicationContext的层次结构强>
本来是想研究一下SpringMVC组件的,结果解决了以前的一个疑问.WebApplicationContext的层次结构
下面是从官网的复印件一份。xml
ContextLoaderListener:初始化一个根WebApplicationContext: SpringIOC初始化一些中间服务+ datasouces的Bean
DispatcherServlet:初始化一个Servlet WebApplicationContext: SpringIOC初始化前端控制器+视图resovlers + HandleMapping的Bean
父子关系:Servlet WebApplicationContext。setParent(根WebApplicationContext);子容器找不到就去父容器找。
& lt; web-app> & lt;才能listener> ,,,& lt; listener-class> org.springframework.web.context.ContextLoaderListener & lt;才能/listener> & lt;才能context-param> ,,,& lt; param-name> contextConfigLocation ,,,& lt; param-value>/web - inf/app-context.xml & lt;才能/context-param> & lt;才能servlet> ,,,& lt; servlet-name> app ,,,& lt; servlet-class> org.springframework.web.servlet.DispatcherServlet ,,,& lt; init-param> ,,,,,& lt; param-name> contextConfigLocation ,,,,,& lt; param-value> & lt;/param-value> ,,,& lt;/init-param> ,,,& lt; load-on-startup> 1 & lt;/load-on-startup> & lt;才能/servlet> & lt;才能servlet-mapping> ,,,& lt; servlet-name> app ,,,& lt; url-pattern>/app/* & lt;/url-pattern> & lt;才能/servlet-mapping> & lt;/web-app>
<强>二,DispatcherServlet的组件强>
servlet.init()时初始化SpringIOC容器外,还有初始化了一部分SpringMVC组件
/*, org.springframework.web.servlet.DispatcherServlet # initStrategies 认识一下*/protected 才能;void  initStrategies (ApplicationContext 上下文),{ ,,,initMultipartResolver(上下文); ,,,initLocaleResolver(上下文); ,,,initThemeResolver(上下文); ,,,initHandlerMappings(上下文); ,,,initHandlerAdapters(上下文); ,,,initHandlerExceptionResolvers(上下文); ,,,initRequestToViewNameTranslator(上下文); ,,,initViewResolvers(上下文); ,,,initFlashMapManager(上下文); 以前,,}>关于怎么在SpringMVC中实现一个DispatcherServlet组件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。
怎么在SpringMVC中实现一个DispatcherServlet组件