阅读本文需要 5 分钟
tips:本文属于 Spring MVC 请求流程 - 基于源码解读 的小分支
前言
processDispatchResult 的主要作用:
- 获取视图名称
- 渲染视图
调用过程
DispatcherServlet#processDispatchResult =》 DispatcherServlet#render
render
方法先通过 resolveViewName
方法获取视图名称,然后再调用 View
的 render
方法渲染视图
- 获取视图名称
- 渲染视图
关键代码
-
视图解析器将逻辑视图转换为物理视图
org.springframework.web.servlet.view.UrlBasedViewResolver#buildView
-
生成视图之前还会对重定向和转发做特别处理
org.springframework.web.servlet.view.UrlBasedViewResolver#createView
-
渲染视图
org.springframework.web.servlet.view.AbstractView#exposeModelAsRequestAttributes