Spring 2023面试题(2)--Spring mvc 运行流程

1. Spring MVC的运行流程主要包括以下步骤:

  1. 用户发送请求到前端控制器(DispatcherServlet)。
  2. 前端控制器接收到请求后,初始化处理器映射器(HandlerMapping)和处理器适配器(HandlerAdapter)。
  3. 前端控制器根据请求的URL和Method,使用处理器映射器找到符合条件的处理器(Handler)。
  4. 处理器映射器将处理器封装成处理器执行链,并返回给前端控制器。
  5. 前端控制器将处理器执行链传递给处理器适配器。
  6. 处理器适配器根据处理器执行链找到对应的控制器(Controller)和方法,并调用控制器方法执行。
  7. 在控制器方法执行前后,可以根据需要执行拦截器(Interceptor)的preHandle和postHandle方法。
  8. 控制器方法执行完成后,返回一个ModelAndView对象给处理器适配器。
  9. 处理器适配器将ModelAndView对象传递给前端控制器。
  10. 前端控制器使用视图解析器(ViewResolver)将ModelAndView对象解析成视图对象(View)。
  11. 前端控制器将视图对象渲染成响应结果,并将响应结果返回给用户。
--> Request --> DispatcherServlet  
         |  
         v  
        HandlerMapping --> Handler  
         |  
         v  
        适配器 --> PreHandle --> 目标方法  
         |                   |  
         v                   v  
        PostHandle --> 异常解析器 --> ModelAndView  
         |  
         v  
        视图解析器 --> View  
         |  
         v  
         --> Response

2. 流程图:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/lovoo/article/details/131438074