springmvc请求处理入口:DispatcherServlet


 

    闲来无事。看spring官方文档,整理一些知识点,为避免遗忘,来此记录。

                                                         springmvc请求流程图

  DispatcherServlet(前置控制器)是一个真正的Servlet(集成HttpServlet的基础类),常配置在web.xml。主要作用是处理url映射。如下所示:

 

                                            DispatcherServlet基本配置

 DispatcherServlet的初始化参数:

1.contextConfigLocation-Context:配置路径

2.Namespace:在WebApplicationContext中的命名空间,默认xx-servlet

3.contextClass:实现WebApplicationContext的类,能够实例化被这个Servlet所使用的context。在默认情况下,XmlWebApplication会被使用。

 

1.2 WebApplicationContext

   在Spring中AppliationContext(应用程序上下文)的实例的生效范围能被限定。在Web MVC框架中,每一个DispatcherServlet有它自己的WebApplicationContext。

webApplicationContext其实是ApplicationContext的扩展,主要实现了一些Web工程有必要的特性,如主题解析等等。

//配置过程中,注意SpringMVC是Spring的子容器

 

 

   在WebApplication中的特殊bean类型,也是DispatcherServlet的主要职责:

1.HandlerMapping处理器映射器

2.HandlerAdapter处理器适配器

3.HandlerExceptionResolver处理器异常解析器

4.ViewResolver视图解析器

5.LocaleResolver & LocaleContextResolver地区解析器和地区Context解析器

6.ThemeResolver主题解析器

7.MultipartResolver多部件解析器

8.FlashMapManager

 

1.3 contextLoaderListener初始化上下文和DispatcherServlet中处理之间的关系

  简单地说,contextLoaderListener初始化上下文是针对整个Spring框架的applicationContext,加载的Bean对整个应用程序都是共享的,一般如:application*.xml;而DispatcherServlet是SpringMVC子容器的上下文,只加载WEB相关的组件,一般单独配置如:springmvc.xml。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM