지금까지 @interface를 이용하여 사용자 정의 애너테이션을 만들어 보았습니다. 여기에서 중요한 점은 사용자 정의 애너테이션 @MemberId가 실제로 유효성 검사를 위해 @Constraint의 validatedBy 요소에 설정한 클래스를 사용한다는 것입니다. 사실 이 클래스는 ConstraintValidator 인터페이스의 구현체입니다.
그럼 다음으로 사용자 정의 애너테이션의 유효성 검사 클래스로 ConstraintValidator 인터페이스의 구현체를 생성하는 방법을 살펴보겠습니다.