필드 (String의 경우)에 standart 제약 조건 세트 (길이가 3 ~ 240 자의 null 영숫자 문자열이 아니어야 함)를 넣고 싶은 경우 일부를 재정의 할 수있는 방법이 있는지 알고 싶습니다. 모델 코드에서이 제약 조건의 또한 이것은 오버라이드 될 것인가, 아니면 오버라이드 된 애노테이션을 2 번 유효하게하는 것인가? 당신이JSR 303 맞춤 제한 재정의
확인 답변을
는이
@AlphanumericString
@Size(min=100, max=150) //override standart values from AlphanumericString annotation
덕분에 같은 것을해야한다, 나 자신에 응답합니다. 느릅 나무는 중첩 된 주석 매개 변수
@Numerical
@Size //arbitrary parameter values
@ConstraintValidator(FrenchZipcodeValidator.class)
@Documented
@Target({ANNOTATION_TYPE, METHOD, FIELD})
@Retention(RUNTIME)
public @interface FrenchZipCode {
String message() default "Wrong zipcode";
String[] groups() default {};
@OverridesParameters({
@OverridesParameter(constraint=Size.class, parameter="min")
@OverridesParameter(constraint=Size.class, parameter="max") })
int size() default 5;
@OverridesParameter(constraint=Size.class, parameter="message")
String sizeMessage() default "{error.zipcode.size}";
@OverridesParameter(constraint=Numerical.class, parameter="message")
String numericalMessage() default "{error.zipcode.numerical}";
}
감사합니다. 이미 알아 냈습니다.이 방법을 사용하려고합니다. 유효성 검사기 팩토리를 응용 프로그램별로 한 번만 인스턴스화하고, 유효성 검사를 그룹으로 나누고 더 느린 처리 시간에서 순서를 지정하는 것 이외에 유효성 검사 속도를 높일 수있는 방법을 제안 할 수 있습니까? – Pilgrim