在Spring MVC中,常常使用@RequestBody
注解处理JSON请求数据。那么,@RequestBody
的作用是什么呢?
@RequestBody
注解表示将HTTP请求正文中的JSON数据绑定到方法的参数上。它是Spring MVC中处理JSON请求的重要注解之一。
POST /api/user HTTP/1.1 Content-Type: application/json { "name": "Tom","age": 18 }
而在Spring MVC处理器方法中,使用@RequestBody
注解声明一个参数:
@ResponseBody @RequestMapping("/api/user") public String addUser(@RequestBody User user) { // ... return "success"; }
通过@RequestBody
注解,Spring MVC会将请求正文中的JSON数据转换成User
对象,供方法中使用。
需要注意的是,@RequestBody
在将请求体转换成Java对象时,需要通过HttpMessageConverter来发现请求的的格式。而默认情况下,Spring MVC提供了多个HttpMessageConverter,能够支持处理JSON、XML、JPG等格式。
总的来说,@RequestBody
让我们方便地将HTTP请求主体中的JSON数据转换成Java对象,在开发中有很大的作用。