더북(TheBook)

마지막으로 @Constraint는 만들고자 하는 애너테이션이 어떤 클래스를 사용하여 유효성 검사를 할지 설정합니다.

다음은 사용자 정의 애너테이션 @MemberId를 생성하는 예입니다.

사용자 정의 애너테이션 @MemberId 생성 예

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import javax.validation.Constraint;

@Constraint(validatedBy=MemberIdValidator.class)  
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)  
@Documented  
public @interface MemberId {  
    String message() default "아이디는 admin 입니다.";  
    Class<?>[] groups() default {};  
    Class<?>[] payload() default {};
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.