springboot 接口入参如何做判空处理
时间: 2023-10-27 16:10:15 浏览: 174
SpringBoot接口加密解密统一处理
在 Spring Boot 中,可以通过使用注解来实现接口入参的判空处理。具体来说,可以使用`@RequestParam`、`@RequestBody`、`@PathVariable` 等注解来定义入参,并在注解中添加`required`属性,如果该属性的值为`true`,则表示该入参是必须的,如果为`false`,则表示该入参可以为空。
例如,可以在 `@RequestParam` 注解中添加 `required = true` 的属性来表示该参数不能为空,如下所示:
```java
@GetMapping("/user")
public User getUserInfo(@RequestParam(value = "userId", required = true) Integer userId) {
if (userId == null) {
// 处理参数为空的情况
}
// 处理参数不为空的情况
}
```
另外,还可以使用 `@Valid` 和 `@NotNull` 注解来进行参数校验,如果参数为空,则会抛出 `MethodArgumentNotValidException` 异常。例如:
```java
@PostMapping("/user")
public void addUser(@Valid @RequestBody User user) {
// 处理用户添加操作
}
```
在上面的代码中,使用了 `@Valid` 注解来表示需要对 `@RequestBody` 中的 User 参数进行校验,如果参数中的某些属性为空,则会抛出 `MethodArgumentNotValidException` 异常。同时,User 类中的某些属性还可以使用 `@NotNull` 注解来限制非空。
阅读全文