- @RequestBody 用在方法参数上面,用来将请求参数绑定到request body中,通过HttpMessageConverter封装为具体的JavaBean
- 在当前对象获取整个http请求的body里面的所有数据,因此spring就不可能将这个数据强制包装成Course或者List类型,并且从@requestbody设计上来说,只获取一次就可以拿到请求body里面的所有数据,就没必要出现有多个@requestbody出现在controller的函数的形参列表当中
语法
@RequestBody(required=true)
参数 |
说明 |
required |
是否存在参数,默认是true,表示请求中一定要有相应的参数,否则将报404错误码 |
- 使用@RequestBody接收数据时,前端不能使用GET方式提交数据,而是用POST方式进行提交。
- 获取ajax的数据只能使用post请求,同时异步方式只能是$.ajax()
示例
public class UserController {
@RequestMapping("/testValid")
@ResponseBody
public Object setOrderInfo(@RequestBody InfoVO infoVO, HttpServletRequest request, HttpServletResponse response){
InfoVO cVo = getInfoVo(infoVO);
return "success";
}
} |