admin管理员组

文章数量:1794759

SpringMVC工作流程(初学SSM框架总结)

SpringMVC工作流程(初学SSM框架总结)

        近几天接触到SSM框架中与web相关的SpringMVC框架,其中有许多新的名词如前端控制器,处理器映射器等,以及其中的SpringMVC的工作流程光写出来比较绕,特此总结一下。

 一、SpringMVC组件基本认识
前端控制器(DispatcherServlet) 统一处理请求和响应,是整个工作流程的控制中心,由该Servlet控制其余组件。
处理器映射器(HandlerMapping) 根据用户请求的url来查找下面的处理器,可以理解为寻路器。
处理器适配器(HandlerAdapter) 按照特定的规则去执行相关的处理器 。
处理器(Handler) 表现为Controller控制器,对具体用户的业务请求进行请求,并将处理的结果封装在ModelAndView对象中,并返回给调用者。
视图解析器(ViewResolver) 顾名思义,根据逻辑视图名,解析为可见的视图。

  二、SpringMVC工作流程

以上为简单的工作流程,若加入拦截器,工作流程为:

1.用户向服务器发送请求,请求被前端控制器DispatcherServlet捕获。 2.前端控制器对请求的URL进行解析,得到里面的请求资源标识符URI,开始判断URI对应的映射:   a.不存在(404):     判断下有没有配置默认servlet     没配置,找不到映射客户端报404    b.存在映射:     访问目标资源(JS,HTML,JSP),找不到也是404 3.根据URI调用HandlerMapping处理器映射器获得Handler处理器配置的相关对象(Handler对象(表现为控制器方法)和对应的拦截器),以执行链对象返回。 4.前端控制器根据获取的Handler,选择合适的HandlerAdapter处理器适配器(用来执行控制器方法的组件)。 5.获得HandlerAdapter后,开始执行拦截器方法preHandler(正序)。 6.提取请求中的请求报文参数,放到Handler形参中,开始执行控制器方法。 7.Handler执行完后,向前端控制器返回ModelAndView对象,Model是模型,View是要返回的逻辑视图 8.执行拦截器postHandler(反序执行)。 9.判断异常,有异常执行HandlerExceptionResolver完成异常处理。 10.根据ViewResolver视图解析器,根据Model和View渲染视图。 11.选然后执行afterCompletion拦截器(反序执行)。 12.渲染结果返回客户端。

        

                

本文标签: 工作流程框架springmvcSSM