SpringMVC执行原理

SpringMVC是Spring的一个模块,所以SpringMVC和Spring无需通过中间整合层进行整合。

SpringMVC是一个基于MVC的web框架。

SpringMVC执行原理图如下:

第一步:发起请求到前端控制器(DispatcherServlet);

第二步:前端控制器HandlerMapping根据xml配置、注解查找Handler;

第三步:处理器映射器HandlerMapping向前端控制器返回Handler;

第四步:前端控制器调用处理器适配器去执行Handler;

第五步:处理器适配器执行Handler;

第六步:Handler执行完成,给适配器返回ModelAndView;

第七步:处理器适配器向前端控制器返回ModelAndView;

              ModelAndView是SpringMVC框架的一个底层对象,包括Model和View】

第八步:前端控制器请求视图解析器去进行视图解析;

             【根据逻辑视图名解析真正的视图(jsp)】

第九步:视图解析器向前端控制器返回View对象;

第十步:前端控制器进行视图渲染;

              视图渲染将模型数据(在ModelAndView对象中)填充到request域】

第十一步:前端控制器向用户响应结果;

SpringMVC执行原理_第1张图片

相关重要组件:

1.     前端控制器DispatcherServlet:作用是:接收请求、响应结果,相当于转发器;

DispatcherServlet相当于中央处理器,有了它就减少了其他组件之间的耦合;

2.     处理器映射器HandlerMapping:作用是:根据请求的url查找Handler;

3.     处理器适配器HandlerAdapter:作用是:按照特定的规则(HandlerAdapter要求的规则)去执行Handler;

注意:编写Handler时按照HandlerAdapter的要求你去做,这样适配器才可以正确执行Handler;

4.     视图解析器ViewResolver:作用是:根据逻辑视图名解析真正的视图(View);

5.     视图 View:View是一个接口,实现类支持不同的View类型(jsp、freemarker、pdf ……);


你可能感兴趣的:(SpringMVC)