02.Spring MVC进阶
02.Spring MVC进阶
Spring MVC 进阶
SpringMVC 常用组件
- DispatcherServlet:DispatcherServlet 是 Spring MVC 框架的前端控制器。它负责接收所有的 HTTP 请求,并将请求分发给对应的处理器进行处理。DispatcherServlet 是 Spring MVC 框架的核心组件,它调度请求处理流程中的各个环节。
- HandlerMapping:HandlerMapping 是处理器映射器的一种实现,它根据请求的 URL 路径映射到具体的处理器 (Controller),确定请求对应的处理器。HandlerMapping 可以根据不同的映射策略进行配置,例如基于 URL 路径、基于注解等。
- Handler:Handler 是处理器的意思,也称为 Controller。它是业务逻辑的具体执行者,负责处理请求并返回处理结果。在 Spring MVC 中,Handler 可以是一个普通的 POJO 类,通过方法来处理请求。
- HandlerAdapter:HandlerAdapter 是处理器适配器,用于执行处理器的方法,并将请求的参数进行适配,使其能够正确处理请求。HandlerAdapter 根据处理器的类型和处理方法的参数类型,选择合适的适配器来执行处理器方法。
- ViewResolver:ViewResolver 是视图解析器,用于将处理结果渲染为最终的视图。它根据处理器返回的逻辑视图名解析出具体的视图对象,例如
ThymeleafView
、InternalResourceView
、RedirectView
等。ViewResolver 负责将模型数据传递给视图,最终呈现给用户。 - View:View 是视图的意思,它负责展示最终的处理结果给用户。视图可以是 HTML 页面、JSON 数据、XML 文档等。在 Spring MVC 中,视图通常通过模板引擎进行渲染,将模型数据填充到模板中生成最终的视图。
DispatcherServlet
Spring 的 web 框架围绕 DispatcherServlet 设计。DispatcherServlet 的作用是将请求分发到不同的处理器。从 Spring 2.5 开始,使用 Java 5 或者以上版本的用户可以采用基于注解的 Controller 声明方式。
Spring MVC 框架像许多其他 MVC 框架一样, 以请求为驱动 , 围绕一个中心 Servlet 分派请求及提供其他功能,DispatcherServlet 是一个实际的 Servlet (它继承自 HttpServlet 基类)。
SpringMVC 的原理如下图所示:
本文由作者按照 CC BY 4.0 进行授权