[java] 사용자 정의 어노테이션

공부기록·2023년 11월 19일
0
post-thumbnail

사용자 정의 어노테이션 (Custom Annotation)

  • @interface를 통하여 어노테이션 클래스를 작성 할 수 있다.
@Documented
@Constraint(validatedBy = CategoriesExistValidator.class)
@Target( { ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER })
@Retention(RetentionPolicy.RUNTIME)
public @interface ExistCategories {

    String message() default "해당하는 카테고리가 존재하지 않습니다.";
    Class<?>[] groups() default {};
    Class<? extends Payload>[] payload() default {};
}

@Documented

  • 사용자 정의 어노테이션 생성시 사용

@Constraint

  • Constraint(validatedBy = CategoriesExistValidator.class)
    • CategoriExistValidator라는 클래스를 통하여 @ExistCategories가 붙은 대상을 검증한다.

@Target

  • 어노테이션 정의시 적용 대상을 지정한다.

@Retention

  • 어노테이션 유지 기간을 정한다.
    • @Retention(RetentionsPolicy.RUNTIME)
      • 런타임 시까지 어노테이션 사용

0개의 댓글

관련 채용 정보