我有一个类:
@ColumnNameUnique(groups = CreateTableChecks.class)
public class Table {
@Valid
@NotEmpty(groups = CreateTableChecks.class)
private List<Measure> measures;
}
类级约束
@ColumnNameUnique(groups = CreateTableChecks.class)
总是先运行,然后是字段级约束@NotEmpty(groups = CreateTableChecks.class)
运行。是否有强制字段级约束
@NotEmpty(groups = CreateTableChecks.class)
首先运行?
最佳答案
您需要使用@GroupSequence
和re-define the default group sequence .没有这个,组内的验证顺序就没有定义,它可以是任何顺序(你的案例中的类级别约束总是首先执行不是必须的)。这样的事情应该有效:
@GroupSequence({FieldChecks.class, ClassChecks.class})
@ColumnNameUnique(groups = ClassChecks.class)
public class Table {
@Valid
@NotEmpty(groups = FieldChecks.class)
private List<Measure> measures;
}
现在,如果 @Default
组得到验证,首先验证类级约束,然后验证字段级约束。
关于java - 如何在类级约束之前验证字段级约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30431293/