使用JSR-303验证组。
如果未指定任何组,则约束是“默认Bean验证”组的一部分(请参阅:)javax.validation.groups.Default
。
创建一个接口作为您的“扩展”(或任何您想称呼它的)组:
public interface Extended{}
现在创建一个具有javax.validation.GroupSequence
注释的接口。
@GroupSequence({Default.class, Extended.class})
public interface MySequence {}
根据您的约束设置验证组
@NotEmpty // If no group is specified it is part of the default group
@Length(min=3,max=100, groups = Extended.class)
String firstName;
将MySequence传递给您的验证程序调用。
validator.validate(object, MySequence.class);
根据您@GroupSequence
的指定,将首先验证默认约束,如果没有遇到违反冲突的情况,它将进入扩展组。