Springmvc 学习笔记(一) 介绍与环境搭建 一、Springmvc 的介绍 (一)、介绍 SpringMVC 是一种基于 Java 的实现了 Web MVC 设计模式的请求驱动类型的轻量级 Web 框架,即使用了 MVC 架构模式的思想,SpringMvc 结构简单,而且性能也非常优秀。 相信很多人和我一样,学习SpringMvc 之前多多少少学习过 Struts2。Struts2也是比较优秀的 MVC 架构,比如良好的结构,包括它的多层拦截器,多实例的Action 性能都很好。只是相比 SpringMvc,Struts2 的值栈、OGNL 表达式、struts2标签库等,会导致应用的性能下降。所以相比之下,Springmvc 会比 sturts2 更快,更便于使用,这也是现在越来越多的团队使用 Springmvc 的原因。 (二)、Springmvc 请求流程 具体执行步骤如下: 1、 首先用户发送请求———>前端控制器,前端控制器根据请求信息(如 URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;图 2-1 中的 1、2 步骤; 2、 页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在 Spring Web MVC 中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个 ModelAndView(模型数据和逻辑视图名);图 2-1 中的 3、4、5 步骤; 3、 前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并把模型数据传入以便视图渲染;图 2-1 中的步骤 6、7; 4、 前端控制器再次收回控制权,将响应返回给用户,图 2-1 中的步骤 8;至此整个结束。 (三)、 SpringMvc 结构 核心架构的具体流程步骤如下: 1、 首先用户发送请求——>DispatcherServlet,前端控制器收到请求后自己不进行处理,而是委托给其他的解析器进行处理,作为统一访问点,进行全局的流程控制; 2、 DispatcherServlet——>HandlerMapping, HandlerMapping 将会把请求映射为 HandlerExecutionChain 对象(包含一个 Handler 处理器(页面控制器)对象、多个 HandlerInterceptor 拦截器)对象,通过这种策略模式,很容易添加新的映射策略; 3、 DispatcherServlet——>HandlerAdapter,HandlerAdapter 将会把处理器包装为适配器,从而支持多种类型的处理器,即适配器设计模式的应用,从而很容易支持很多类型的处理器; 4、 HandlerAdapter——>处理器功能处理方法的调用,HandlerA...