@RequestMapping("/quick10")//mvc @ResponseBody//获取集合参数 2如果是用ajax来写的 把提交contextType设置为json格式就可以直接获取无需包装 public void save10(@RequestBody List<User> userList){//req注解为把该请求体封装放入对应参数中 System.out.println(userList); } @RequestMapping("/quick9")//mvc @ResponseBody//获取集合参数 1把参数包装到一个类里面 然后用获取类的方法获取 public void save9(VO vo){ System.out.println(vo.getUsers()); } @RequestMapping("/quick8")//mvc @ResponseBody//获得请求参数 请求参数需要对应user类中的属性参数 public void save8(String[] strs){ System.out.println(Arrays.asList(strs));//获得的是string[]地址转换成list方便输出 } @RequestMapping("/quick7")//mvc @ResponseBody//获得请求参数 请求参数需要对应user类中的属性参数 public void save7(User user){ System.out.println(user.toString()); } @RequestMapping("/quick6")//mvc @ResponseBody//获得普通请求参数 请求参数对应下面的参数就行 public void save6(String name){ System.out.println(name); }
2.7 参数绑定注解@requestParam
注解@RequestParam还有如下参数可以使用:
value:与请求参数名称
required:此在指定的请求参数是否必须包括,默认是true,提交时如果没有此参数则报错
defaultValue:当没有指定请求参数时,则使用指定的默认值赋值
@RequestMapping("/quick14")
@ResponseBody
public void quickMethod14(@RequestParam(value="name",required =
false,defaultValue = "itcast") String username) throws IOException {
System.out.println(username);
}
2.8 获得Restful风格的参数
Restful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。主要用于客户端和服务
器交互类的软件,基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存机制等。
Restful风格的请求是使用“url+请求方式”表示一次请求目的的,HTTP 协议里面四个表示操作方式的动词如下:
GET:用于获取资源
POST:用于新建资源
PUT:用于更新资源
DELETE:用于删除资源
例如:
/user/1 GET :
得到 id = 1 的 user
/user/1 DELETE: 删除 id = 1 的 user
/user/1 PUT:
更新 id = 1 的 user
/user POST:
新增 user2. SpringMVC 获得请求数据
2.8 获得Restful风格的参数
上述url地址/user/1中的1就是要获得的请求参数,在SpringMVC中可以使用占位符进行参数绑定。地址/user/1可以写成
/user/{id},占位符{id}对应的就是1的值。在业务方法中我们可以使用@PathVariable注解进行占位符的匹配获取工作。
http://localhost:8080/itheima_springmvc1/quick19/zhangsan
@RequestMapping("/quick19/{name}")
@ResponseBody
public void quickMethod19(@PathVariable(value = "name",required = true) String name){
System.out.println(name);
}
自定义转换器
1实现接口 第一个参数是得到的 第二个是转换后的
2 配置引用转换器
一些注解
获取请求头 cookie啥的就不写了 百度查