JSR 303:如何验证带注释的对象的集合?
是否有可能在JSR 303-Jave Bean Validation中验证对象的集合,而该集合本身没有任何注释,但包含在其中的元素呢?
例如,由于第二个人的名字为空,这是否可能导致约束冲突:
List<Person> people = new ArrayList<Person>();people.add(new Person("dave"));
people.add(new Person(null));
Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
Set<ConstraintViolation<List<Person>>> validation = validator.validate(people);
回答:
是的,只需添加@Valid
到集合中即可。
这是《
Hibernate验证程序参考》中的示例。
public class Car { @NotNull
@Valid
private List<Person> passengers = new ArrayList<Person>();
}
这是标准的JSR-303行为。参见规范的 3.1.3节。
以上是 JSR 303:如何验证带注释的对象的集合? 的全部内容, 来源链接: utcz.com/qa/408030.html