Spring复习——day17_SpringMVC_执行流程

发布于:2022-10-31 ⋅ 阅读:(566) ⋅ 点赞:(0)

目录

 

12、SpringMVC执行流程

12.1、SpringMVC核心组件

12.2、SpringMVC工作流程


12、SpringMVC执行流程

12.1、SpringMVC核心组件

DispatcherServlet:前端控制器,不需要工程师开发,由框架提供

作用:统一处理请求和响应,整个流程控制的中心,由它调用其它组件处理用户的请求

HandlerMapping:处理器映射器,不需要工程师开发,有框架提供

作用:根据请求的url,method等信息查找Handler,即控制方法

Handler:处理器,需要工程师开发

作用:在DispatcherServlet的控制线Handler对具体的用户请求进行处理

HandlerAdapter:处理器适配器,不需要工程师开发,由框架提供

作用:通过HandlerAdapter对处理器(控制器方法)进行执行

ViewResolver:视图解析器,不需要工程师开发,由框架提供

作用:进行视图解析,得到相应的视图,例如:ThymeleafView、InternalResourceView、RedirectView

View:视图

作用:将模型数据通过页面展示给用户

12.2、SpringMVC工作流程

 流程说明:

1、客户端(浏览器)发送请求,DispatcherServlet拦截请求。

2、DispatcherServlet根据请求信息调用HandlerMappingHandlerMapping根据uri去匹配查找能处理的Handler(也就是平常所说的Controller控制器),并会将请求涉及到的拦截器和Handler一起封装。

3、DispatcherServlet调用HandlerAdapter适配执行Handler

4、Handler完成对用户请求的处理后,会返回一个ModelAndView对象给DispatcherServletModelAndView包含了数据模型以及相应的视图信息。Model是返回的数据对象,View是个逻辑上的View

5、ViewResolver会根据逻辑View查找实际的View

6、DispaterServlet把返回的Model传给View(视图渲染)。

7、把View返回给请求者(浏览器)。