Spring MVC
SpringMVC框架的作用
SpringMVC框架是以请求为驱动,围绕Servlet设计,将请求发给控制器(C),然后通过模型对象(M),分派器来展示请求结果视图(V)。其中核心类是DispatcherServlet,它是一个Servlet,顶层是实现的Servlet接口。
SpringMVC框架的核心组件
在SpringMVC框架中,核心组件有:
DispatcherServlet:接收所有请求的Servlet(不包括例如css、js等),并且根据请求路径分发到各控制器;
HandlerMapping:记录请求路径与控制器或处理请求的方法之间的映射关系;
Controller:具体处理请求,确定如何响应的组件;
ModelAndView:控制器的返回结果,其中,Model表示数据,View表示最终负责响应的视图组件的名称;
ViewResolver:根据视图组件名称得到具体的视图组件。
运行流程:
(1)客户端(浏览器)发送请求,直接请求到DispatcherServlet。
(2)DispatcherServlet 根据请求信息调用HandlerMapping,解析请求对应的 Handler。
(3)解析到对应的 Handler(也就是我们平常说的Controller 控制器)后,开始由 HandlerAdapter 适配器处理。
(4)HandlerAdapter 会根据 Handler来调用真正的处理器开处理请求(此处handler是代理对象,可能会执行AOP),并处理相应的业务逻辑。
(5)处理器处理完业务后,会返回一个 ModelAndView 对象,Model 是返回的数据对象,View 是个逻辑上的 View。
(6)ViewResolver 会根据逻辑 View 查找实际的 View。
(7)DispaterServlet 把返回的 Model 传给 View(视图渲染)。
(8)把 View 返回给请求者(浏览器)
- 感谢你赐予我前进的力量