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

回到顶部