Spring MVC架构原理分析

Spring MVC架构原理分析


执行过程如下:

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

    第二步:前端控制器请求 HandlerMapping,查找对应的处理器 Handler;

                 可以根据xml配置、注解进行查找 Handler

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

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

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

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

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

                 ModelAndView是Spring MVC的一个底层对象,包括了model 和 view

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

                 根据逻辑视图名解析成真正的视图,即jsp

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

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

             视图渲染就是将模型数据(在ModelAndView中)填充到request域

    第十一步:前端控制器向用户响应结果,到这里就执行结束了

涉及到的重要的组件:

    1. 前端控制器 DispatcherServlet(不需要程序员开发)

        作用:接收请求,响应结果,相当于转发器  中央处理器

                DispatcherServlet的存在降低了其他组件的耦合度

    2. 处理器映射器 HandlerMapping(不需要程序员开发)

        作用:根据请求的URL查找对应的Handler

    3.处理器适配器 HandlerAdapter

        作用:按照特定规则 ( HandlerAdapter要求的规则 ) 执行Handler

    4.处理器 Handler(需要程序员开发)

        注:编写Handler时应该按照HandlerAdapter的要求,这样适配器才可以正确执行Handler

    5.视图解析器 ViewResolver(不需要程序员开发)

        作用:根据逻辑视图名把ModelAndView解析成真正的视图(View)

    6.视图 View(需要前端开发jsp)

        作用:View是一个接口,实现类支持不同的View类型(jsp、freemarker、pdf…等等)

    原文作者:Spring MVC
    原文地址: https://blog.csdn.net/Shadow__Hunter/article/details/79759595
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞