@RequestBody是SpringMVC中的注解,用于将HTTP请求的请求体(body)中的JSON/XML格式的数据转换成Java对象。
在前后端分离的应用中,通常使用JSON格式的请求体传递数据。@RequestBody注解可以将请求体中的JSON数据自动解析成Java对象,方便在控制器中进行业务处理。
举个例子,假设前端发送一个POST请求,请求体的JSON数据格式如下:
{
"name": "John",
"age": 20
}
我们想要将这个JSON数据转换成Java对象,可以在Controller方法中加上@RequestBody注解,并指明所映射的实体类:
@PostMapping("/user")
@ResponseBody
public String createUser(@RequestBody User user) {
// 处理业务逻辑
String result = userService.createUser(user);
return result;
}
在这个例子中,我们将请求体中的JSON数据转换成一个User对象,并使用该对象执行业务逻辑。
需要注意的是,当使用@RequestBody注解时,需要确保请求头中的Content-Type属性值正确地指定了请求体的格式(通常为application/json)。
另外,@RequestBody注解只能绑定一个请求体,因为一个HTTP请求只能包含一个请求体。如果需要绑定多个请求体,可以考虑使用MultiValueMap对象。