복붙노트

[SPRING] 주석으로 주석 된 메소드의 aspect는 다른 주석으로 주석 처리됩니다.

SPRING

주석으로 주석 된 메소드의 aspect는 다른 주석으로 주석 처리됩니다.

메소드에 스프링 AOP를 사용하여 포인트 컷을 만들 수 있으며 주석을 달았습니다. 주석에는 주석이 추가되었습니다. 내 맞춤 주석은 다음과 같습니다.

@AccessRestriction
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface HasPermission {
}

이 특수 효과로 주석을 달았습니다.

@Target({ElementType.ANNOTATION_TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface AccessRestriction {
}

따라서 AccessRestriction으로 주석을 붙인 주석으로 주석 처리 된 모든 메소드를 처리 할 포인트 컷을 작성할 수 있습니다.

해결법

  1. ==============================

    1.솔루션을 찾았습니다.

    솔루션을 찾았습니다.

    나는 그러한 pointcut을 만들었다 :

     within(@(@test.security.access.AccessRestriction *) *) ||
     execution(@(@test.security.access.AccessRestriction *) * *(..))
    
  2. from https://stackoverflow.com/questions/37806731/aspect-for-method-annotated-with-annotation-which-are-annotated-with-another-ann by cc-by-sa and MIT license