美文网首页
@RequestParam、@RequestBody和@Mode

@RequestParam、@RequestBody和@Mode

作者: EnchantF | 来源:发表于2019-06-13 10:19 被阅读0次

@PathVariable:处理request uri 的注解

@RequestMapping("/pets/{petId}")   

 public void findPet(@PathVariable String petId)

@RequestParam、@RequestBody:处理request body部分的注解

@RequestParam(value,required)

1)接收form表单参数, value中的参数名称要跟name中参数名称一致

    @RequestParam(value="username") String userName

2)用来处理Content-Type: 为 application/x-www-form-urlencoded编码的内容( Http协议中,如果不指定Content-Type,则默认传递的参数就是application/x-www-form-urlencoded类型 )

@RequestBody 用于Post请求,不能用于Get请求

1)  常用来处理非Content-Type: application/x-www-form-urlencoded编码格式的数据

2) 用于接收json串  如ajax请求的data参数    可在直接接收转换到Pojo

@RequestBody Map<String, Object> map

@ModelAttribute:将参数绑定到Model对象

<form action="/user/modelAttributeTest" method="post">

用户id:<input type="text" name="userId"><br>

用户名:<input type="text" name="userName"><br>

用户密码:<input type="password" name="userPwd"><br>

<input type="submit" value="提交"><br>

</form>

name的属性值要跟User的属性相对应

Content-Type格式为以下:

1)application/x-www-form-urlencoded,这种情况的数据@RequestParam、@ModelAttribute可以处理,@RequestBody也可以处理

2)multipart/form-data,@RequestBody不能处理这种格式的数据(form表单里面有文件上传时,必须要指定enctype属性值为multipart/form-data)

3)application/json、application/xml等格式的数据,必须使用@RequestBody来处理

相关文章

网友评论

      本文标题:@RequestParam、@RequestBody和@Mode

      本文链接:https://www.haomeiwen.com/subject/wyxjfctx.html