马鞍山网站建设推广,怎么查个人征信记录,做面食专业网站,自己可以创建网站吗SpringMVC 请求流程 一、DispatcherServlet 是一个 Servlet二、Spring MVC 的完整请求流程 Spring MVC 框架是基于 Servlet 技术的。以请求为驱动#xff0c;围绕 Servlet 设计的。Spring MVC 处理用户请求与访问一个 Servlet 是类似的#xff0c;请求发送给 Servlet#xf… SpringMVC 请求流程 一、DispatcherServlet 是一个 Servlet二、Spring MVC 的完整请求流程 Spring MVC 框架是基于 Servlet 技术的。以请求为驱动围绕 Servlet 设计的。Spring MVC 处理用户请求与访问一个 Servlet 是类似的请求发送给 Servlet执行 doService 方法最后响应结果给浏览器完成一次请求处理。 一、DispatcherServlet 是一个 Servlet
DispatcherServlet 是核心对象称为中央调度器前端控制器 Front Controller。负责接收所有对 Controller 的请求调用开发者的 Controller 处理业务逻辑将 Controller 方法的返回值经过视图处理后响应给浏览器。DispacherServlet 作为 Spring MVC 中的 Controller 的职责 ① 是一个门面接收请求控制请求的处理过程。所有请求都必须由 DispatcherServlet 控制。Spring MVC 对外的入口。可以看作门面设计模式。② 访问其他的控制器。这些控制器处理业务逻辑。③ 创建合适的视图将 ② 中得到的业务结果放到视图响应给用户。④ 解耦了其他组件所有组件只与 DispatcherServlet 交互。彼此之间没有关系。⑤ 实现 ApplicationContextAware每个 DispatcherServlet 都拥有自己的 WebApplicationContext它继承了 ApplicationContext。WebApplicationContext 包含了 Web 相关的 Bean 对象比如开发人员用注释 Controller 的类视图解析器视图对象等等。DispatcherServlet 访问容器中的 Bean 对象。⑥ Servlet Spring IOC 组合。 DispatcherServlet 的继承关系图 二、Spring MVC 的完整请求流程 ① 红色 DispatcherServlet 是框架创建的核心对象可配置它的属性 contextPath。② 蓝色的部分框架已经提供多个对象。开发人员可自定义替换默认的对象。③ 绿色的部分是开发人员自己创建的对象控制器 Controller 和视图对象。流程说明 1DispatcherServlet 接收从客户端发送的请求。判断是普通请求还是上传文件的请求。2DispatcherServlet 收到请求调用 HandlerMapping 处理器映射器。3 HandlerMapping 根据请求 URI 找到对应的控制器以及拦截器组装成 HandlerExecutionChain 对象。将此对象返回给 DispatcherServlet 做下一步处理。4DispatcherServlet 调用 HandlerAdapter 处理器适配器。这里是适配器设计模式进行接口转换将对一个接口调用转换为其他的方法。5HandlerAdapter 根据执行控制器方法也就是开发人员写的 Controller 类中的方法并返回一个 ModelAndView 对象。6HandlerAdapter 返回 ModelAndView 给DispatcherServlet。7DispatcherServlet 调用 HandlerExceptionResolver 处理异常有异常返回包含异常的 ModelAndView。8DispatcherServlet 调用 ViewResolver 视图解析器来解析 ModelAndView。9ViewResolver 解析 ModelAndView 并返回真正的 View 给 DispatcherServlet。10DispatcherServlet 将得到的视图进行渲染将 Model 中的数据填充到 request 域。11返回给客户端响应结果。