1.简述 Spring MVC 的 请求处理流程以及整体框架结构

Spring MVC 请求处理流程步骤:

1.首先用户发送请求到前端控制器(DispatcherServlet),前端控制器根据

请求信息(比如:URL)来决定选择哪个页面控制器(Controller)来进l行处理,并把请求委托给它,

即:Servlet 控制器的控制逻辑部分。

2.页面控制器接收到请求后,进行业务处理,处理完毕后返回一个 ModelAndView (模型数据和逻辑视图名)

3.前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的真正视图,并把模型数据ch传入以便

视图渲染展示

4.前端控制器再次收回控制权,将结果响应返回给用户,至此整个流程结束

 

 

1.简述 Spring MVC 的 请求处理流程以及整体框架结构_第1张图片

框架结构:

1.客户端发出 HTTP 请求,Web 应用服务器接收此请求,若匹配 DispatcherServlet 的请求映射路径

(Web.xml 中指定),Web 容器将该请求转交给 DispatcherServlet 处理。

2.DispatcherServlet 接收到该请求后,将根据请求的信息(包括:URL 、请求参数、HTTP方法等)

及 HandlerMapping 的配置(在 -servlet.xml 中配置)找到处理请求的处理器(Handler).

3.当 DispatcherServlet 根据 HandlerMapping 找到对应当前请求的 Handler 之后,通过 HandlerAdapter

对 Handler 进行封装,再以统一的适配器接口调用 Handler.

4.在请求信息到达真正调用 Handler 的处理方法之前的这段时间内,Spring MVC 还完成了很多工作,它

将会将请求信息以一定的方式转换并绑定到请求方法的入参中,对于入参的对象会进行数据转换、数据格式

以及数据数据效验等。这些都做完之后,最后才真正的调用 Handler 的处理方法进行xiang'y相应的业务逻辑处理。

5.处理器完成业务逻辑处理之后将返回一个 ModelAndView 对象给 DispatcherServlet ,ModelAndView 对象

包含了逻辑视图名和模型数据信息。

6. ModelAndView 对象中包含的是 “逻辑视图名”,而非真正的视图对象,DispatcherServlet 会通过

ViewResolver 将逻辑视图名解析为正在的视图对象 View。当然对于数据展示的视图可以为:JSP、

xml、PDF、JSON 等多种数据格式,对此 Spring MVC 均可灵活配置。

7.当得到真正的视图对象 View 后,DispatcherServlet 会使用 ModelAndView 对象中的模型数据

对 View 进行视图渲染。

8.最终客户端获得响应消息,根据配置,可以是普通的 HTML 页面,也可以是一个 XML 或者

JSON 格式的数据等等。

1.简述 Spring MVC 的 请求处理流程以及整体框架结构_第2张图片

 

1.简述 Spring MVC 的 请求处理流程以及整体框架结构_第3张图片

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Spring,MVC,请求处理流程,整体框架结构)