夜雨聆风学习资料网

ARTICLE · 1056454

DispatcherServlet源码分析1

DispatcherServlet源码分析1

【Spring MVC 的核心前端控制器】

你可以把它想象成机场的”总调度中心”或者公司的”前台接待”。

所有的用户请求(HTTP Request)首先都会到达这里。

它自己不处理具体的业务逻辑,而是负责”调度”:

1.看看这个请求该交给哪个 ControLLer(处理器)去处理。

2.找到对应的 Controller 后,调用它处理业务。

3.拿到结果后,再找合适的 View(视图)渲染成页面或 JSON 返回给用户。

=== 源码架构分析 ===

1.继承关系:

Dispatcherservlet -> Frameworkservlet -> HttpservletBean -> Httpservlet

HttpServlet:证明它本质上是一个标准的 Java SerVLet,运行在 Tomcat 等 Web 容器中。

FrameworkServlet:负责整合 Spring Ioc 容器,初始化 WebApplicationContext.

DispatcherServlet:负责实现具体的 MVC 调度逻辑(如核心的 doDispatch 方法)。

2.核心组件(在 onRefresh 初始化时会加载以下策略组件):

HandlerMapping:处理器映射器(决定请求交给哪个 Controller)。

HandlerAdapter:处理器适配器(负责调用 Controller 的方法).

ViewResolver:视图解析器(负责把逻辑视图名解析为真正的 View 对象)。

HandlerExceptionResolver:全局异常处理器。

LocaleResolver:国际化/本地化解析器。

MultipartResolver:文件上传解析器。

相关学习资料