zoukankan      html  css  js  c++  java
  • 面霸之路——SpringMVC的执行流程

                                             

    第一步:用户向服务器发起请求,请求被spring前端控制器DispacherServlet捕获;

        (DispacherServlet的作用是接收请求,响应结果,相当于转发器、中央处理器,它可以减少其他组件之间的耦合度)

    第二步:DispacherServlet前端控制器对URL进行解析,得到请求资源标识符(URI)。然后根据该URI,调用HandlerMapping获得Handler配置的所有相关的对象,获得的方式可以根据Xml文件配置或注解;

    第三步:处理器映射器HandlerMapping向前端控制器以HandlerExecutionChain对象的形式返回Handler;

    第四步:前端控制器根据获得的Handler,选择一个合适的处理器适配器HandlerAdapter,提取Request中的模型数据,填充Handler入参;

        (HandlerAdapter的作用是按照HandlerAdapter要求的规则去执行Handler)

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

    第六步:Handler处理器执行完成后给适配器返回ModelAndView,其中Handler处理器需程序员开发,编写Handler是按照HandlerAdapter的要求去做,这样适配器才可以去正确的执行Handler;

    第七部:处理器适配器向前端控制器返回ModelAndView,ModelAndView是SpringMVC框架的一个底层对象,包括Model and View;

    第八步:前端控制器DispacherServlet根据返回的ModelAndView,选择一个合适的ViewResolver(必须是已经注册到Spring容器中的ViewResolver)进行视图解析;

        (ViewResolver的作用就是根据逻辑视图名解析成真正的视图,例如jsp)

    第九部:视图解析器向前端控制器返回View,视图View是一个接口,实现类支持不同的View类型(jsp、freemarker、pdf...);

    第十步:前端控制器进行视图渲染,将在ModelAndView对象中的模型数据填充到request域中;

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

    快速记忆技巧:前端控制器捕获请求、查找Handler、执行Handler、选择ViewResolver、渲染并返回。

     

  • 相关阅读:
    未来 3-5 年信息安全行业会如何变化,目前可以观察到的变化有哪些?
    信息安全经典书籍
    Apparmor——Linux内核中的强制访问控制系统
    深入理解SELinux
    FreebuF黑客专访系列之吴翰清(刺):接下来几年,有两样东西必定会火
    Security Checklist (路由器安全checklist)
    CPU MPU MCU SOC SOPC关系及区别
    军火库(第一期):无线电硬件安全大牛都用哪些利器?
    华为V-ISA信誉安全体系:对付新型DDoS攻击的利器
    物联网兴起 嵌入式系统安全日益受关注
  • 原文地址:https://www.cnblogs.com/wangdh666/p/11347417.html
Copyright © 2011-2022 走看看