简述
SpringMVC 是一种基于 Java 的实现 MVC 设计模型的请求驱动类型的轻量级 Web 框架,属于 Spring FrameWork 的后续产品,已经融合在 Spring Web Flow 里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用 Spring 进行 WEB 开发时,可以选择使用 Spring的 Spring MVC 框架或集成其他 MVC 开发框架,如 Struts1(现在一般不用),Struts2 等。
SpringMVC 已经成为目前最主流的 MVC 框架之一,并且随着 Spring3.0 的发布,全面超越 Struts2,成为最优秀的 MVC 框架。它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现任何接口。同时它还支持RESTful 编程风格的请求。
SpringMVC的优势
SpringMVC有清晰的模块划分,把任务分配给角色各司其职
和spring其他框架能进行无缝连接
可适配,通过 HandlerAdapter 可以支持任意的类作为处理器。
可定制性,HandlerMapping、ViewResolver 等能够非常简单的定制
SpringMVC的执行流程
RequestMapping注解
用于建立请求 URL 和处理请求方法之间的对应关系,它可以放在类上,也可以放在方法上,它的value属性和path属性是一个路径
method属性用于指定请求的类型,它是枚举类型,method = RequestMethod.POST即为post请求,method = RequestMethod.GET即为get请求
headers属性指定请求的头部,比如headers = "content-type=text/*" 可以指定网页的数据编码类型
params属性可以指定请求的参数,如果参数不匹配就无法响应
被RequestMapping注解的方法可以加参数,可以用来接受http的请求数据,但变量名和请求的key名要一致