@RequestBody
时间: 2023-06-29 17:17:26 浏览: 79
如果您需要从前端接收以JSON格式提交的数据,可以在Controller方法的参数上添加@RequestBody注解,如下所示:
```java
@PostMapping("/add")
@ResponseBody
public Map<String, Object> addFlight(@RequestBody FlightDO flight) {
flightService.addFlight(flight);
Map<String, Object> result = new HashMap<>();
result.put("code", 200);
result.put("msg", "添加成功");
return result;
}
```
这样,在前端使用AJAX等方式提交JSON格式的航班信息数据时,后端的Controller方法就可以通过@RequestBody注解将JSON数据转换为Java对象,并进行相应的业务逻辑处理。如果需要接收其他格式的数据,可以根据具体情况进行处理。
相关问题
@RequestBody() 和@RequestBody
@RequestBody和@RequestParam都是Spring MVC中用于接收前端传递数据的注解,但是它们的使用方式有所不同。其中,@RequestParam用于接收普通的表单数据,而@RequestBody则用于接收请求体中的数据,通常用于接收JSON格式的数据。下面是两个使用示例:
1.使用@RequestParam接收前端传递的普通表单数据
```java
@PostMapping("/login")
public String login(@RequestParam("username") String username, @RequestParam("password") String password) {
// 处理登录逻辑
return "success";
}
```
2.使用@RequestBody接收前端传递的JSON格式数据
```java
@PostMapping("/user")
public User addUser(@RequestBody User user) {
// 处理添加用户逻辑
return user;
}
```
需要注意的是,当同时使用@RequestParam和@RequestBody时,@RequestParam指定的参数可以是普通元素、数组、集合、对象等等,而@RequestBody最多只能有一个。另外,GET方式无请求体,所以使用@RequestBody接收数据时,前端不能使用GET方式提交数据,而是用POST方式进行提交。
阅读全文