我正在尝试验证一个类,我必须执行的验证必须按以下顺序进行:首先是类本身的验证,然后是嵌套对象的验证,最后是自定义验证。要尝试订购验证,我正在使用 @groupsequence 注释,如下所示:
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY)
@GroupSequence({FirstClass.class, ValidSecond.class, ValidCustom.class})
@ValidCustom(groups = ValidCustom.class)
@JsonInclude(JsonInclude.Include.NON_NULL)
public record FirstClass(
@NotEmpty(message = " mustn't be empty")
String a,
@DecimalMin("0.999")
@DecimalMax("99999999999999999.999")
Double e,
@NotNull(groups = ValidSecond.class)
PowerN n,
MaxF maxF) {
}
我创建了界面:
公共接口 ValidSecond { }
和自定义的ValidCustom。
验证单独工作,但我需要首先在父类和嵌套对象上运行验证,并且只针对最后一个自定义对象。对于上面的方法,这不会发生,并且在 ValidSecond 之前调用了自定义