6.理解DispatcherServlet
DispatcherServlet的作用
DispatcherServlet是前端控制器设计模式的实现,提供Spring Web MVC的集中访问点,负责职责的分派,
且与Spring IoC容器无缝集成,从而可以获得Spring的所有好处。
DispatcherServlet主要用作职责调度,用于控制流程,主要职责如下
1、文件上传解析,如果请求类型是multipart将通过MultipartResolver进行文件上传解析;
2、通过HandlerMapping,将请求映射到处理器(返回一个HandlerExecutionChain,它包括一个处理器、多个HandlerInterceptor拦截器);
3、通过HandlerAdapter支持多种类型的处理器(HandlerExecutionChain中的处理器);
4、通过ViewResolver解析逻辑视图名到具体视图实现;
5、本地化解析;
6、渲染具体的视图等;
7、如果执行过程中遇到异常将交给HandlerExceptionResolver来解析。
从以上我们可以看出DispatcherServlet主要负责流程的控制(而且在流程中的每个关键点都是很容易扩展的)。
DispatcherServlet在Web.xml中的配置
基本的配置方式在上一章已经见到了,这里不赘述
DispatcherServlet也可以配置自己的初始化参数,也就是servlet配置中可以配置
<init-param>,将会覆盖默认配置,参数有:
contextClass:实现WebApplicationContext接口的类,当前的servlet用它来创建上下文。如果这个参数没有指定, 默认使用XmlWebApplicationContext。
contextConfigLocation:传给上下文实例(由contextClass指定)的字符串,用来指定上下文的位置。
这个字符串可以被分成多个字符串(使用逗号作为分隔符) 来支持多个上下文(在多上下文的情况下,如果同一个bean被定义两次,后面一个优先)。
指定后就使用指定的文件,比如指定:classpath:spring-servlet-config.xml ,表示读取classpath下的spring-servlet-config.xml文件,而不是默
认的WEB-INF/ [server-name]-servlet.xml了namespaceWebApplicationContext:命名空间。默认值是[server-name]-servlet。
上下文关系-1
集成Web环境的通用配置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:spring-common-config.xml,
classpath:spring-budget-config.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
如上配置是Spring集成Web环境的通用配置;一般用于加载除Web层的Bean(如DAO、Service等),以便于与其他任何Web框架集成。
contextConfigLocation :表示用于加载Bean的配置文件;
contextClass :表示用于加载Bean的ApplicationContext实现类,默认
WebApplicationContext。
创建完毕后会将该上下文放在ServletContext,
如下:servletContext.setAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, this.context);
上下文关系-2
ContextLoaderListener初始化的上下文和DispatcherServlet初始化的上下文的关系
aaarticlea/png;base64,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" alt="" />
上下文关系-3
从上图可以看出:
ContextLoaderListener初始化的上下文加载的Bean是对于整个应用程序共享的,不管是使用什么表现层技术,一般如DAO层、Service层Bean;
DispatcherServlet初始化的上下文加载的Bean是只对Spring Web MVC有效的Bean,
如Controller、HandlerMapping、HandlerAdapter等等,该初始化上下文应该只加载Web相关组件。
DispatcherServlet初始化顺序-1
aaarticlea/png;base64,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Y4EalZSUHDx4cMyYMfPnz79+/XpxcXFubu6vv/4aHx9//PjxvXv3btmyRaVSWVpaMgwzb948vguj586dKzxQowoJCVmxYsUbb7wRFBRUV1dnZmY2efJk8tKsWbPI9qk1eseOHfU+jn7s2LGrVq3S/BkUFDRs2DCybFjTqVarS0pKBg8ezDAM34FtCIIgSJqagemcMmWKXp8nYDpZlh01apSZmdnWrVv5nimj98adCRMmvPPOO7rRyIWkn332GTlNL8p0NjQ0dOvWbcGCBXpfFchn7969Xbt25baYmZm5urpqvXHp0qXt2rXj2jgvL6/evXvT//YMOTbJMIzmGOo333zDMIzm/mWisrIyhmECAwO5jWStCf/cztChQ5cuXUqWf/vtN09PT76efKaTPh81hemsqan53//9X62fw+GazgsXLnTp0uW1117bunXr4MGDN27cKHBwcenSpaNHj1ar1ZcvXya3nJPD2NeuXSM3mJeWlnp6eq5bt073vXV1dZrIWqbzzJkz//M//6O5OV1jOvPy8l544QXNgWRdkStKn3vuuRdffPHNN98cO3bszJkzraysOnfuvG3btuPHj58/fz4/P7+qqopszGfPntUNEhIS4uzszK0YufL122+/1S1FTU2Nv7+/ln1kWXbw4MF37twxMzMjhY2Ojia/5Hn37t3XXnuNHEfctGkT91/BNm3a6H4q6+vrO3fuzM3zo48++vTTT8mywU2nWq0uKioaMWJEU/1WAgRBUEtVMzCdw4cP79Gjh+4ZbQHTqVarnzx54ufn17Nnz/bt29vY2MTExGhF0Gs6Z82aNXDgQM2ftbW1wcHBb7/9NvmJ6qqqKq3L9TQSMJ2PHz9mGGb9+vV8qfLlo2s6O3ToMHz48CV/1rhx4/r37899aLaXl9eIESOEh9NSRUXFoEGDNEdM161bxzDM4sWLuQN5eHj0799fr+kUPg29YcOGPn36kAO9vr6+mp871xWf6aTPR92Y6bx69eqoUaN8fX3Pnz9PfpHc09Pz+PHj3LvXR40atW/fPvJw+Ozs7BdffPGdd97R/T10tVpdX1/fu3dv7oUTap1rOtVq9fnz5/v16yd8upZrOktKSt566y3uJSXch8MvXbq0V69efE/ZzMrKWrZsWVpaGvfnzrdv3657s3lxcXGPHj20zvtXVVUtX778b3/7W3h4+PLly6dN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" alt="" />
HttpServletBean继承HttpServlet,因此在Web容器启动时将调用它的init方法,该初始化方法的主要作用:
1:将Servlet初始化参数(init-param)设置到该组件上;
2:提供给子类初始化扩展点,initServletBean(),该方法由
FrameworkServlet覆盖并实现。
DispatcherServlet初始化顺序-2
FrameworkServlet继承HttpServletBean,通过initServletBean()进行Web上下文初始化,该方法主要覆盖以下两件事情:
1:初始化web上下文,最后调用了onRefresh()方法执行容器的一些初始化,这个方法由子类实现,来进行扩展 ;
2:提供给子类初始化扩展点,initFrameworkServlet()
DispatcherServlet继承FrameworkServlet,并实现了onRefresh()方法提供一些
前端控制器相关的配置,主要做了:
1:初始化Spring Web MVC使用的Web上下文,并且可能指定父容器为(ContextLoaderListener加载了根上下文);
2:初始化DispatcherServlet使用的策略,如HandlerMapping、HandlerAdapter等。
DispatcherServlet 的默认配置在DispatcherServlet.properties(和DispatcherServlet类在一个包下)中,是当Spring配置文件中没有指定配置时使用的默认策略
DispatcherServlet中使用的特殊的Bean-1
DispatcherServlet默认使用WebApplicationContext作为上下文,因此我们来看一下该上下文中有哪些特殊的Bean:
1、Controller:处理器/页面控制器,做的是MVC中的C的事情,但控制逻辑转移到前端控制器了,用于对请求进行处理;
2、HandlerMapping:请求到处理器的映射,如果映射成功返回一个HandlerExecutionChain对象(包含一个Handler处理器(页面控制器)对象、多
个HandlerInterceptor拦截器)对象;如BeanNameUrlHandlerMapping将URL与Bean名字映射,映射成功的Bean就是此处的处理器;
3、HandlerAdapter:HandlerAdapter将会把处理器包装为适配器,从而支持多种类型的处理器,即适配器设计模式的应用,从而很容易支持很多类型的处理器;如
SimpleControllerHandlerAdapter将对实现了Controller接口的Bean进行适配,并且调用处理器的handleRequest方法进行功能处理;
DispatcherServlet中使用的特殊的Bean-2
4、ViewResolver:ViewResolver将把逻辑视图名解析为具体的View,如InternalResourceViewResolver将逻辑视图名映射为jsp视图;
5、LocalResolver:本地化解析,因为Spring支持国际化,因此LocalResolver解析客户端的Locale信息从而方便进行国际化;
6、ThemeResovler:主题解析,通过它来实现一个页面多套风格,即常见的类似于软件皮肤效果;
7、MultipartResolver:文件上传解析,用于支持文件上传;
8、HandlerExceptionResolver:处理器异常解析,可以将异常映射到相应的统一错误界面,从而显示用户友好的界面(而不是给用户看到具体的错误信息);
9、RequestToViewNameTranslator:当处理器没有返回逻辑视图名等相关信息时,自动将请求URL映射为逻辑视图名;
10、FlashMapManager:用于管理FlashMap的策略接口,FlashMap用于存储一个请求的输出,当进入另一个请求时作为该请求的输入,通常用于重定向场景
6.理解DispatcherServlet的更多相关文章
- 02springMVC理解DispatcherServlet
DispatcherServlet的作用 DispatcherServlet在Web.xml中的配置 上下文关系 DispatcherServlet初始化顺序 DispatcherServlet中使用 ...
- Spring mvc 中 DispatcherServlet 的学习和理解
上图表示当客户请求来到时,spring架构作出响应的流程,可以从图中看到看到请求分发的中心就是 DispatcherServlet 类,DispatcherServlet的任务是将请求发送给Sprin ...
- spring mvc 原理(快速理解篇)
这两张图大家应该都不陌生. 从图上来看就是:一个请求过来,front controller根据具体的请求路径分派到具体的controller,具体的controller处理请求并把处理结果返回给fro ...
- Spring框架系列(13) - SpringMVC实现原理之DispatcherServlet的初始化过程
前文我们有了IOC的源码基础以及SpringMVC的基础,我们便可以进一步深入理解SpringMVC主要实现原理,包含DispatcherServlet的初始化过程和DispatcherServlet ...
- SpringInAction--Spring Web应用之SpringMvc 注解配置
Spring MVC 是当前Web服务器中常用的结构,今天就来学习这相关的知识,首先上图——Spring请求的时候所经历的坎坷之路: (书上原话,算是解释..) 在请求离开浏览器时① ,会带有用户所请 ...
- 第05章-构建Spring Web应用程序
1. Spring MVC起步 1.1 跟踪Spring MVC的请求 前端控制器DispatcherServlet 请求旅程的第一站是Spring的DispatcherServlet.与大多数基于J ...
- Spring学习(五)--构建Spring Web应用程序
一.Spring MVC起步 看过猫和老鼠的小伙伴都可以想象Tom猫所制作的捕鼠器:它的目标 是发送一个小钢球,让它经过一系列稀奇古怪的装置,最后触发捕鼠 器.小钢球穿过各种复杂的配件,从一个斜坡上滚 ...
- 【已转移】【Java架构:基础技术】一篇文章搞掂:Spring
本文篇幅较长,建议合理利用右上角目录进行查看(如果没有目录请刷新). 本文是对<SPRING实战第4版>的总结,大家也可以去仔细研读该书 [------------------------ ...
- 笔记49 在Spittr应用中整合Hibernate
在前边构建的Spittr应用中整合Hibernate 由于最近所学的hibernate都是使用xml方式进行配置的,所以在与以Java方式配置的Spittr应用结合时就会出现一些小问题,在此进行总结. ...
随机推荐
- smarty3.0中文手册文档API及使用指南
1.安装Smarty3.0一.什么是smarty?smarty是一个使用PHP写出来的模板PHP模板引擎,它提供了逻辑与外在内容的分离,简单的讲,目的就是要使用PHP程序员同美工分离,使用的程序员改变 ...
- 初学MyBatis.net
1.MyBatis.net介绍 MyBatis..net是一个简单,但是完整的ORM框架,它使你的实体对象与sql语句或者存储过程之间的映射变得很简单,并提供数据访问.包括两个主要框架 DataAcc ...
- Lambda中的一些方法的总结
public List<UserInfoBaseModel> GetNameByIDList(List<int> UserID) { var UserList = LoadRe ...
- sublimtext2 资源
https://github.com/qljiong/soda-theme/blob/master/README.md http://my.oschina.net/ruochenchen/blog/9 ...
- 【Android测试】【随笔】与 “58同城” 测试开发交流
◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5384698.html 初衷 一直都有一个这样的想法: 虽然 ...
- wpf前端设计
http://www.cnblogs.com/w-wanglei/archive/2016/03/14/5274298.html#_nav_0
- 报javax.servlet.ServletException: Servlet.init() for servlet springmvc threw exception异常 的解决方案
后台错误信息如下: javax.servlet.ServletException: Servlet.init() for servlet springmvc threw exception org.a ...
- Windows搭建Cocos2d-JS环境
目录 安装Python Cocos2d-JS框架 开发工具(WebStorm / Cocos Code IDE) 用Webstorm查看官方实例 使用Cocos Code IDE创建工程 1.安装Py ...
- ArcGIS中的坐标系定义与转换 (转载)
原文:ArcGIS中的坐标系定义与转换 (转载) 1.基准面概念: GIS中的坐标系定义由基准面和地图投影两组参数确定,而基准面的定义则由特定椭球体及其对应的转换参数确定,因此欲正确定义GIS系统坐 ...
- iOS Plist文件,增删改查
今天早上,9点开始弄Plist,然后一直写,一直写(中午取出40分钟吃饭时间),写到1点,写完了,交给头,头说,不是这个意思.我是每个用户创建了一个文件夹,在这个用户的文件夹里面,分别根据应用创建了文 ...