0
저는 Spring 프로젝트에 대한 유효성 검증 주석을 작성하려고합니다.다른 변수에 의존하는 스프링 유효성 확인
동일한 객체의 bool 값이 true가 아닌 한 nullable 인 여러 필드가 있습니다.
@NotNull(if xyz=true)
:
같은 일을 할 몇 가지 쉬운 방법이 있습니까? 감사합니다
저는 Spring 프로젝트에 대한 유효성 검증 주석을 작성하려고합니다.다른 변수에 의존하는 스프링 유효성 확인
동일한 객체의 bool 값이 true가 아닌 한 nullable 인 여러 필드가 있습니다.
@NotNull(if xyz=true)
:
같은 일을 할 몇 가지 쉬운 방법이 있습니까? 감사합니다
나는 그것이 주석 (너무 복잡)로 할 수는 없습니다 생각하지만,이 org.springframework.validation.Validator 인터페이스를 구현하여 매우 쉽게 수행 할 수 있습니다
public class MyClassValidator implements Validator {
@Override
public boolean supports(Class c) {
return MyClass.class.equals(c);
}
@Override
public void validate(Object object, Errors errors) {
MyClass myClass = (MyClass) object;
if (myClass.getA() == null) {
errors.rejectValue("avalue", "avalue.empty", "'A' value cannot be empty");
}
else if (myClass.getA() == true && (myClass.getB() == null || myClass.getB() < 0)) {
errors.rejectValue("bvalue", "bvalue.notvalid", "'B' value is not valid");
}
}
}
확실하지,하지만 난 당신을 생각 주석을 사용하여이를 수행 할 수 없으며 가변기를 사용해야합니다. –
사용자 정의 제약 조건과 유효성 검사기를 사용해야 할 것입니다. –
[JSR 303 Validation의 복제본] 한 필드가 "something"과 같으면이 다른 필드는 null이 아니어야합니다.] (http://stackoverflow.com/questions/9284450/jsr-303-validation-if-one-field) -equals-something-then-these-other-fields-sho) –