package com.sishuok.spring4.validator; import javax.validation.ConstraintValidator; import javax.validation.ConstraintValidatorContext; import javax.validation.constraintvalidation.SupportedValidationTarget; import javax.validation.constraintvalidation.ValidationTarget; import java.util.Arrays; /** * <p>User: Zhang Kaitao * <p>Date: 13-12-15 * <p>Version: 1.0 */ @SupportedValidationTarget(ValidationTarget.PARAMETERS) public class CrossParameterValidator implements ConstraintValidator<CrossParameter, Object[]> { @Override public void initialize(CrossParameter constraintAnnotation) { } @Override public boolean isValid(Object[] value, ConstraintValidatorContext context) { if(value == null || value.length != 2) { throw new IllegalArgumentException("must have two args"); } if(value[0] == null || value[1] == null) { return true; } if(value[0].equals(value[1])) { return true; } return false; } }