一、整体执行流程文字版用户发起请求请求到达前端控制器 DispatcherServletDispatcherServlet 调用 HandlerMapping根据 URL 找到对应的处理器 HandlerControllerHandlerMapping 返回 处理器执行链HandlerExecutionChain包含 Handler 和拦截器DispatcherServlet 将 Handler 交给 HandlerAdapter由适配器执行 Controller 方法执行 拦截器前置方法preHandle调用 Controller 业务方法处理业务逻辑返回 ModelAndView执行 拦截器后置方法postHandleDispatcherServlet 将 ModelAndView 交给 ViewResolver 视图解析器解析出具体视图渲染视图执行 拦截器完成方法afterCompletion最终响应给浏览器二、简化流程图记忆版请求 → DispatcherServlet → HandlerMapping → Handler → HandlerAdapter → Controller → ModelAndView → ViewResolver → 视图渲染 → 响应三、核心组件作用面试必问DispatcherServlet前端控制器整个流程的入口总调度HandlerMapping处理器映射器根据 URL 找 ControllerHandlerAdapter处理器适配器适配执行不同类型 ControllerController业务处理器处理请求ModelAndView封装数据和视图名ViewResolver视图解析器解析视图名称Interceptor拦截器在 Controller 前后做增强四、面试一句话精简版请求先到 DispatcherServlet由 HandlerMapping 找到 ControllerHandlerAdapter 执行 Controller返回 ModelAndView再由 ViewResolver 解析视图并渲染最后响应客户端中间经过拦截器。
SpringMVC执行流程
一、整体执行流程文字版用户发起请求请求到达前端控制器 DispatcherServletDispatcherServlet 调用 HandlerMapping根据 URL 找到对应的处理器 HandlerControllerHandlerMapping 返回 处理器执行链HandlerExecutionChain包含 Handler 和拦截器DispatcherServlet 将 Handler 交给 HandlerAdapter由适配器执行 Controller 方法执行 拦截器前置方法preHandle调用 Controller 业务方法处理业务逻辑返回 ModelAndView执行 拦截器后置方法postHandleDispatcherServlet 将 ModelAndView 交给 ViewResolver 视图解析器解析出具体视图渲染视图执行 拦截器完成方法afterCompletion最终响应给浏览器二、简化流程图记忆版请求 → DispatcherServlet → HandlerMapping → Handler → HandlerAdapter → Controller → ModelAndView → ViewResolver → 视图渲染 → 响应三、核心组件作用面试必问DispatcherServlet前端控制器整个流程的入口总调度HandlerMapping处理器映射器根据 URL 找 ControllerHandlerAdapter处理器适配器适配执行不同类型 ControllerController业务处理器处理请求ModelAndView封装数据和视图名ViewResolver视图解析器解析视图名称Interceptor拦截器在 Controller 前后做增强四、面试一句话精简版请求先到 DispatcherServlet由 HandlerMapping 找到 ControllerHandlerAdapter 执行 Controller返回 ModelAndView再由 ViewResolver 解析视图并渲染最后响应客户端中间经过拦截器。