requestbody和 @reuqestparam的使用举例
时间: 2024-09-18 07:09:09 浏览: 35
@RequestBody与@Validated使用时校验失效.md
5星 · 资源好评率100%
@RequestBody和@RequestParam都是Spring MVC中用于获取前端传递参数的注解,但是它们的使用场景不同。
@RequestBody注解用于获取前端传递的请求体中的参数,通常用于接收JSON格式的数据。举个例子,如果前端传递的参数是一个JSON格式的字符串,我们可以使用@RequestBody注解将其转换为Java对象,如下所示:
```
@PostMapping("/user")
public User addUser(@RequestBody User user) {
// 处理用户添加逻辑
}
```
@RequestParam注解用于获取前端传递的请求参数,通常用于接收表单提交的数据。举个例子,如果前端传递的参数是一个普通的字符串,我们可以使用@RequestParam注解将其直接映射到方法的参数上,如下所示:
```
@GetMapping("/user")
public User getUser(@RequestParam("id") Long id) {
// 根据id查询用户信息
}
```
需要注意的是,@RequestParam注解默认情况下是必须传递的,如果前端没有传递该参数,会抛出异常。如果想要设置该参数为非必须的,可以设置required属性为false,如下所示:
```
@GetMapping("/user")
public User getUser(@RequestParam(value = "id", required = false) Long id) {
// 根据id查询用户信息
}
```
阅读全文