SpringMVC原理

SpringMVC简介

       Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。


       spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内          置的 Spring Web 框架还是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是高度可配置的,而且包含多种          视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText 和 POI。Spring MVC 框架并不知道使用          的视图,所以不会强迫您只使用 JSP 技术。

        
       Spring的MVC框架主要由DispatcherServlet、HandlerMapping、HandlerAdapter、Handler/View Resolver、

       View组成。


SpringMVC组件:

      1)前端控制器--DispatcherServlet

             DispatcherServlet是Spring MVC的心脏和灵魂, DispatcherServlet是Spring MVC的灵魂和心脏,

              它负责接收HTTP请求并协调Spring MVC的各个组件完成请求处理的工作。和任何Servlet一样,

             用户必须在web.xml中配置好DispatcherServlet,并且让其接受一 切HTTP请求。

      2)处理器映射器--HandlerMapping

            根据请求的URL查找Handler

      3)处理器适配器--HandlerAdapter

            定义去执行Handler的规则

      4)处理器--Handler

             也就是我们通常所说的Controller,这个需要按照HandlerAdapter的要求去做,

             这样适配器才能正确执行Handler

      5)视图解析器--View Resolver

             进行视图解析,根据逻辑视图名返回真正的视图View

      6)视图--View

            View是一个接口,实现类支持不同的View类型(jsp、freemarker、pdf...)




SpringMVC原理图

       

         


SprinvgMVC运行原理:

       1)发起请求到前端控制器(DispatcherServlet)
       2)前端控制器请求HandlerMapping查找 Handler
     可以根据xml配置、注解进行查找
       3)处理器映射器HandlerMapping向前端控制器返回Handler
       4)前端控制器调用处理器适配器去执行Handler
       5)处理器适配器去执行Handler
       6)Handler执行完成给适配器返回ModelAndView
       7)处理器适配器向前端控制器返回ModelAndView
    ModelAndView是springmvc框架的一个底层对象,包括 Model和view
       8)前端控制器请求视图解析器去进行视图解析
   根据逻辑视图名解析成真正的视图(jsp)
       9)视图解析器向前端控制器返回View
       10)前端控制器进行视图渲染
     视图渲染将模型数据(在ModelAndView对象中)填充到request域
       11)前端控制器向用户响应结果 




 

posted @ 2017-01-20 21:09  奋斗之路-张思思  阅读(174)  评论(0编辑  收藏  举报