Spring的DispatcherServlet 使用了特殊的bean来处理请求、渲染视图等,这些特定的bean是Spring MVC 框架的一部分。如果你想指定使用哪个特定的bean,你可以在web应用上下文webApplicationContext 中简单地配置他们。当然这只是可选的,spingMVC维护了一个默认的bean列表,如果你没有进行特别配置,框架将会使用默认的bean
下面介绍DispatcherServlet 都依赖于那些特殊的bean来进行它的初始化:
1、HandlerMapping 处理器映射。它会根据某些规则将进入容器的请求映射到具体的处理器以及处理拦截器上。
2、HandlerAdapter 处理适配器。拿到请求所对应的处理器后适配器将负责去调用该处理器,这使得DispatcherServlet 无需关心具体的调用细节。
3、HandlerExceptionResolver 处理器异常解析器。它负责将捕获的异常映射到不同的视图上去。
4、ViewResolver 视图解析器。它负责将一个代表逻辑视图名的字符串(String)映射到实际的视图类型View上。
5、LocaleResolver&LocaleContextResolver 地区解析器和地区上下文解析器。他们负责解析客户端所在地区信息甚至时区信息,为国际化的视图定制提供了支持。
6、ThemeResolver 主题解析器。它负责解析你的WEB应用中可用的主题,比如,提供一些个性化定制的布局等。
7、MultipartResolver 解析multi-part的传输请求。比如支持通过HTML表单进行的文件上传等。
8、FlashMapManager FlashMap管理器。它能够存储并取回两次请求之间的FlashMap对象。通常在请求重定向的情况下使用。