springmvc源码解析之组件介绍
springmvc组件介绍
01DispatcherServlet
springmvc请求处理器,所有的springmvc请求都会先被这个servlet接受,根据@RequestMapping配置的url映射找到具体的handlerMapping、handlerAdapter组件进行请求参数解析、业务方法处理、响应参数解析,最后通过视图解析器生成视图渲染视图。
02Controller
ServletForwardingController 可以支持servlet转发的控制器
ParameterizableViewController 可以返回配置属性视图解析的控制器
UrlFilenameViewController 将虚拟的url转换成视图的控制器,可以添加视图的前缀和后缀
ServletWrappingController 包装了内部管理servlet实例的控制器
03HandlerMapping
用来根据url映射匹配到具体的业务handler来出来业务请求,不管是基本简单的url映射SimpleUrlHandlerMapping,还是基于beanName的url映射BeanNameUrlHandlerMapping,还是基于@requestMapping注解的url映射,DefaultAnnotationHandlerMapping、RequestMappingHandlerMapping
04HttpRequestHandler
ResourceHttpRequestHandler 直接请求资源的
DefaultServletHttpRequestHandler 默认servlet请求,直接执行转发操作
WebSocketHttpRequestHandler websocket支持
SockJsHttpRequestHandler socketJs支持
HessianServiceExporter hessian代理支持
05HandlerMethodRetu