Skip to content

Spring Mvc执行流程

使用Spring Mvc后,所有的请求都需要经过DispatcherServlet前端控制器,有关请求处理和结果响应的的所有流程都在该类的doDispatcherServlet方法中完成。

  1. 借助于HanderMapping得到处理器执行链,里面封装了HandleMethod代表目标Controller的方法,还有一个记录了要执行的拦截器的集合。
  2. 根据HandlerMethod获取对应的HandleAdapter,其中封装了参数解析器和结果处理器。
  3. 执行拦截器的preHandle方法。
  4. 通过HandleAdapter执行目标Controller的方法,在这个过程中会通过参数解析器解析浏览器提交的数据和通过结果处理器处理controller方法返回的结果。
  5. 执行拦截器的postHandle方法。
  6. 处理响应,如果有异常抛出则执行异常的逻辑,这里还会执行全局异常处理器的逻辑,并通过ViewResolver解析视图,再渲染视图。
  7. 执行拦截器的afterCompletion方法。

最近更新:12/18/2024, 7:52:25 AM

原文链接:Spring Mvc执行流程

|下一篇:Spring、Spring Boot 和 Spring MVC 有什么区别