@Validated 做入参参数控制
时间: 2023-10-31 10:22:39 浏览: 93
在Spring框架中,可以使用`@Validated`注解来进行入参参数的控制。该注解可以用在类级别或方法级别上,用于标记需要进行参数校验的地方。
在使用`@Validated`注解后,可以在方法的入参上使用其他的校验注解,如`@NotNull`、`@NotEmpty`、`@Min`等,来对参数进行限制和验证。当方法被调用时,Spring会自动触发参数校验,并在不满足校验条件时抛出相应的异常。
需要注意的是,为了使参数校验生效,还需要配置相关的校验器和异常处理器。可以在Spring配置文件中配置`MethodValidationPostProcessor`来启用方法级别的参数校验,并通过定义全局异常处理器来处理参数校验失败时抛出的异常。
以下是一个示例代码:
```java
@RestController
@Validated
public class UserController {
@PostMapping("/users")
public ResponseEntity<User> createUser(@Valid @RequestBody User user) {
// 处理请求
}
}
public class User {
@NotNull
private String name;
// 其他字段和getter/setter方法省略
}
```
在上述示例中,`@Validated`注解用于标记整个`UserController`类需要进行参数校验。`@Valid`注解用于标记`createUser`方法的`User`参数需要进行校验,并且`User`类中的`name`字段被标记为`@NotNull`,即不能为空。
这样,在调用`createUser`接口时,如果请求体中的`name`字段为空,将会触发参数校验失败,Spring会抛出相应的异常。
阅读全文
相关推荐


















