我的意思是对list验证不生效
时间: 2023-11-24 10:08:11 浏览: 63
layui表单验证select下拉框实现验证的方法
如果你的List验证不生效,有可能是因为你没有在List上加上@Validated注解。举个例子:
```java
@RestController
public class UserController {
@PostMapping("/users")
public ResponseEntity<List<User>> createUsers(@Validated @RequestBody List<User> users) {
// 处理用户信息
return ResponseEntity.ok(users);
}
}
public class User {
@NotBlank(message = "用户名不能为空")
private String username;
@NotBlank(message = "密码不能为空")
private String password;
// getter/setter 略
}
```
在上述代码中,@Validated注解用于对List<User>集合中的元素进行验证。如果在List前没有加上@Validated注解,则List中的元素不会进行验证。所以请确保在List上加上了@Validated注解。
另外,需要注意的是,如果List中的元素还包含了其他的复杂类型,也需要在这些类型上加上@Validated注解才能进行验证。例如:
```java
public class User {
@NotBlank(message = "用户名不能为空")
private String username;
@NotBlank(message = "密码不能为空")
private String password;
@Validated
private List<Role> roles;
// getter/setter 略
}
public class Role {
@NotBlank(message = "角色名不能为空")
private String name;
// getter/setter 略
}
```
在上述代码中,List<User>集合中的每个User对象包含了一个List<Role>集合,所以在User类中需要对roles字段加上@Validated注解才能对List<Role>集合中的元素进行验证。
阅读全文