如图:
较完整的Spring MVC执行原理!!

图为SpringMVC的一个较完整的流程图,实线表示SpringMVC框架提供的技术,不需要开发者实现,虚线表示需要开发者实现。

简要分析执行流程

  1. DispatcherServlet表示前置控制器,是整个SpringMVC的控制中心。用户发出请求,DispatcherServlet接收请求并拦截请求

  2. 我们假设请求的url为 : http://localhost:8080/SpringMVC/hello
    如上url拆分成三部分:
    http://localhost:8080服务器域名

    SpringMVC部署在服务器上的web站点

    hello表示控制器

    通过分析,如上url表示为:请求位于服务器localhost:8080上的SpringMVC站点的hello控制器

  3. HandlerMapping为处理器映射。DispatcherServlet调用HandlerMapping,HandlerMapping根据请求url查找Handler

  4. HandlerExecution表示具体的Handler,其主要作用是根据url查找控制器,如上url被查找控制器为:hello

  5. HandlerExecution将解析后的信息传递给DispatcherServlet,如解析控制器映射等

  6. HandlerAdapter表示处理器适配器,其按照特定的规则去执行Handler

  7. Handler让具体的Controller执行

  8. Controller将具体的执行信息返回给HandlerAdapter,如ModelAndView

  9. HandlerAdapter将视图逻辑名或模型传递给DispatcherServlet

  10. DispatcherServlet调用视图解析器(ViewResolver)来解析HandlerAdapter传递的逻辑视图名

  11. 视图解析器将解析的逻辑视图名传给DispatcherServlet

  12. DispatcherServlet根据视图解析器解析的视图结果,调用具体的视图

  13. 最终视图呈现给用户。

相关文章:

  • 2022-12-23
  • 2021-11-28
  • 2021-04-18
  • 2022-01-31
  • 2021-11-04
  • 2021-05-06
  • 2021-04-10
猜你喜欢
  • 2022-01-25
  • 2021-05-03
  • 2021-10-03
  • 2021-05-25
  • 2021-10-21
  • 2021-11-05
  • 2021-08-15
相关资源
相似解决方案