Spring MVC 中特殊的Bean

DispatcherServlet 默认使用 WebApplicationContext 作为上下文,因此我们来看一下该上下文中有哪些特殊的 Bean:
1、Controller:处理器/页面控制器,做的是 MVC 中的 C 的事情,但控制逻辑转移到前端控制器了,用于对请求进行
处理;
2、HandlerMapping:请求到处理器的映射,如果映射成功返回一个 HandlerExecutionChain 对象(包含一个 Handler
处理器(页面控制器)对象、 多个 HandlerInterceptor 拦截器)对象; 如 BeanNameUrlHandlerMapping 将 URL 与 Bean
名字映射,映射成功的 Bean 就是此处的处理器;
3、HandlerAdapter:HandlerAdapter 将会把处理器包装为适配器,从而支持多种类型的处理器,即适配器设计模式的
应用,从而很容易支持很多类型的处理器;如 SimpleControllerHandlerAdapter 将对实现了 Controller 接口的
Bean 进行适配,并且掉处理器的 handleRequest 方法进行功能处理;
org.springframework.web.servlet.LocaleResolver=org.springframework.web.servlet.i18n.Acce
ptHeaderLocaleResolver
org.springframework.web.servlet.ThemeResolver=org.springframework.web.servlet.theme.Fixe
dThemeResolver
org.springframework.web.servlet.HandlerMapping=org.springframework.web.servlet.handler.B
eanNameUrlHandlerMapping,\
org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping
org.springframework.web.servlet.HandlerAdapter=org.springframework.web.servlet.mvc.HttpR
equestHandlerAdapter,\
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter,\
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter
org.springframework.web.servlet.HandlerExceptionResolver=org.springframework.web.servlet
.mvc.annotation.AnnotationMethodHandlerExceptionResolver,\
org.springframework.web.servlet.mvc.annotation.ResponseStatusExceptionResolver,\
org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver
org.springframework.web.servlet.RequestToViewNameTranslator=org.springframework.web.serv
let.view.DefaultRequestToViewNameTranslator
org.springframework.web.servlet.ViewResolver=org.springframework.web.servlet.view.Intern
alResourceViewResolver
org.springframework.web.servlet.FlashMapManager=org.springframework.web.servlet.support.
SessionFlashMapManager
4、ViewResolver:V iewResolver将把逻辑视图名解析为具体的V iew,通过这种策略模式,很容易更换其他视图技术;
如InternalResourceViewResolver将逻辑视图名映射为jsp视图;
5、LocalResover: 本地化解析, 因为 Spring 支持国际化, 因此 LocalResover 解析客户端的 Locale 信息从而方便进行国
际化;
6、ThemeResovler:主题解析,通过它来实现一个页面多套风格,即常见的类似于软件皮肤效果;
7、MultipartResolver:文件上传解析,用于支持文件上传;
8、HandlerExceptionResolver:处理器异常解析,可以将异常映射到相应的统一错误界面,从而显示用户友好的
界面(而不是给用户看到具体的错误信息) ;
9、RequestToViewNameTranslator:当处理器没有返回逻辑视图名等相关信息时,自动将请求 URL 映射为逻辑视
图名;
10、FlashMapManager:用于管理 FlashMap 的策略接口,FlashMap 用于存储一个请求的输出,当进入另一个请求时
作为该请求的输入,通常用于重定向场景,后边会细述

你可能感兴趣的:(Spring MVC 中特殊的Bean)