@validated注解怎么用
时间: 2023-08-09 09:10:13 浏览: 105
Java使用@Validated注解进行参数验证的方法
在 Spring Boot 应用程序中使用 `@Validated` 注解需要遵循以下步骤:
1. 在 pom.xml 文件中添加依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
```
2. 在需要验证的 Controller 或 Service 类上添加 `@Validated` 注解。
3. 在需要验证的方法参数上添加相应的约束注解,例如 `@NotNull`、`@Size`、`@Pattern` 等。例如:
```java
@PostMapping("/users")
public User createUser(@Validated @RequestBody User user) {
// ...
}
```
在上面的例子中,`@Validated` 注解用于验证请求体中的 `User` 对象,`@RequestBody` 注解表示请求体中的数据将被反序列化为一个 `User` 对象。
4. 在需要验证的方法返回值上添加 `@Validated` 注解并使用约束注解,例如 `@Valid`、`@NotNull` 等。例如:
```java
@GetMapping("/users/{id}")
public ResponseEntity<User> getUser(@PathVariable Long id) {
User user = userService.getUser(id);
if (user == null) {
return ResponseEntity.notFound().build();
}
return ResponseEntity.ok().body(user);
}
```
在上面的例子中,`ResponseEntity` 是一个泛型类,它的类型参数是 `User`。在这里,我们使用了 `ResponseEntity.ok().body(user)` 来返回包含 `User` 对象的响应体。由于响应体中的 `User` 对象需要进行验证,因此我们在 `ResponseEntity<User>` 上使用了 `@Validated` 注解。
阅读全文