Java 求助

29次阅读

共计 621 个字符,预计需要花费 2 分钟才能阅读完成。

public class Test{
    private String field;
    
    private String field2;
    // 自定义校验规则
    @AssertTrue(message="个人基本信息 - 证件号码格式错误", groups = {Group.PC.class})
    public boolean isValid() {return "A".equals(this.field) ? isTrue(this.field2) : true;
    }
}

public class ValidateUtil {public static  void validate(T t, Class... groups) throws ValidationException {Validator validatorFactory = Validation.buildDefaultValidatorFactory().getValidator();
        Set> errors = validatorFactory.validate(t, groups);
        if (!errors.isEmpty()) {for (ConstraintViolation violation : errors) {throw new ValidationException(violation.getMessage());
            }
        }
    }
}

我在使用 ValidateUtil.validate(test),如果函数名是 isValid() 可以校验,如果不带 is,valid() 就不能校验,求指教

正文完
 0