一、什么是SpringMVC
SpringMVC就是类似于Struts2的mvc框架,属于SpringFrameWork的后续产品。在模型层中与视图层的交互部分。
springMVC执行流程:
二、常用注解
1、RequestMapping注解类的使用方法
RequestMapping注解类的属性,分别有 value, method, consumes, produces, params, headers,这里介绍value属性:
代表具体的请求路径,比如上面的 /user, /login 都是value的值
value可以省略,就像例子中一样,直接用 @RequestMapping("/login") 的格式,它等同于@RequestMapping(value = "/login")
例:@RequestMapping(value = "/login", method = {RequestMethod.POST, RequestMethod.GET})
consumes属性:指定请求的提交内容类型(Content-Type),例如application/json, text/html,它的值既可以是字符串也可以是数组
produces属性:
指定请求中必须包含某些参数值,才会触发这个处理方法。
params属性:
指定请求中必须包含某些参数值,才会触发这个处理方法
参数中除了使用=等号外,还可以使用!=号,表示在参数的值不等于的情况下触发这个方法
也可以不指定具体的值,直接使用 "paramName" 的格式,代表请求中必须包含参数名为 paramName 的参数
直接使用 “!paramName”格式表示请求不能包含名为paramName的请求参数
headers属性:
请求头Header中必须包含某些指定的参数值,才能让该方法处理请求
2、RequestParam注解类的知识点:
在SpringMVC后台控制层获取参数的方式主要有两种,一种是request.getParameter("name"),另外一种是用注解@RequestParam直接获取
有三个属性 value, required, defaultValue
不带任何参数,表示需要的参数名与标注的变量名相同
可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传
参数类型尽量不要使用基本类型int,long等,而应该使用具体的对象类Integer、Long、String等