java如何组合验证两个或多个字段?在方法上
我希望你很好
现在,我正在开发一个自定义注释来验证方法中的参数,方法如下:
界面:
@Target({METHOD})
@Retention(RUNTIME)
@Constraint(validatedBy = ValidarImpl.class)
public @interface Validar {
public abstract String message() default "ERROR VALIDATION";
public abstract Class<?>[] groups() default {};
public abstract Class<? extends Payload>[] payload() default {};
}
类别:
public class ValidarImpl implements ConstraintValidator<Validar, Object> {
@Override
public boolean isValid(Object value, ConstraintValidatorContext context) {
return false;
}
}
注释的实现:
@Validar
public void method1 (@Positive int value, @Valid Car car){}
我正试图从ConstraintValidatorContext类中获取参数的名称及其值,目的是验证method1方法的参数,但是我还不能这样做
我想这样做:How can I validate two or more fields in combination?使用方法
谢谢你的帮助
# 1 楼答案
您可以参考https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/?v=6.1#section-cross-parameter-constraints了解更多详细信息
您可以按以下方式更改代码: