zoukankan      html  css  js  c++  java
  • SpringMVC的执行流程

    SpringMVC的执行流程

    如上图,Spring MVC 程序的完整执行流程如下:

    1. 用户通过浏览器发送请求,请求会被 Spring MVC 的前端控制器 DispatcherServler 接受。
    2. DispatcherServlet 拦截到请求后,会调用 HandlerMapping 处理器映射器。
    3. 处理器映射器根据请求 URL 找到具体的处理器,生成处理器对象(如果有,还会生成拦截器对象)并返回给 DispatcherServlet。
    4. DispatcherServlet 根据返回信息(Handler)选择合适的处理器适配器(HandlerAdapter)。
    5. HandlerAdapter 会调用并指定 Handler(处理器)。此处和上述所说的处理器 Handler,就是我们所编写的 Controller 类。
    6. Controller 执行完成后,会返回一个 ModelAndView 对象,该对象中会包含视图名和模型对象。
    7. HandlerAdapter 将 ModelAndView 返回给 DispatcherServlet。
    8. DispatcherServlet 会根据返回信息(ModelAndView)选择一个合适的视图解析器:ViewResolver。
    9. 视图解析器 ViewResolver 解析视图后,会向 DispatcherServlet 返回具体的 View 对象。
    10. DispatcherServlet 对 View 进行渲染。即,将模型数据填充至视图中。
    11. DispatcherServlet 将渲染后的结果返回/发送给客户端浏览器。

    在上述执行过程中,DispatcherServlet、HandlerMapping、HandlerAdapter 和 ViewResolver 对象的工作都是在框架内部执行的。

  • 相关阅读:
    iostream迭代器操作"txt文本文件"无法写入的思考
    Qt 相对路径 绝对路径
    "lambda"和“bind”的初步思考
    "partition"和“stable_partition”的思考
    "accumulate"的思考
    顺序容器“inset”的思考
    C++重载函数 const形参 引用指针 const_cast
    C++ 可变参数的函数
    JDK8流式处理常用例子
    JDK8时间新API
  • 原文地址:https://www.cnblogs.com/whitespaces/p/12450389.html
Copyright © 2011-2022 走看看