목차
- Spring AOP Pointcut 표현식 - this, target
- Spring AOP Pointcut 표현식 - Advice 에 매게변수 전달
- Spring AOP Pointcut 표현식 - bean
- Spring AOP Pointcut 표현식 - @args
- Spring AOP Pointcut 표현식 - @annotation
- Spring AOP Pointcut 표현식 - @target, @within
- Spring AOP Pointcut 표현식 - args
- Spring AOP Pointcut 표현식 - within
- Spring AOP Pointcut 표현식 - execution
- Spring 핵심원리 고급편 - Pointcut
@annotation
메서드가 주어진 어노테이션을 가지고 있는 조인 포인트를 매칭
@annotation
은 특정 어노테이션이 적용된 메소드 를 기준으로 Advice 를 적용합니다.
Custom Annotation 생성
|
Advisor 생성
어노테이션을 이용해 Advice 적용하기 위해 @annotation
에 어노테이션 패키지 경로를 지정합니다.
|
Custom Annotation 적용
@MethodAop
를 메소드에 적용합니다. 해당 어노테이션이 적용된 메소드에 Advice 를 적용합니다.
|
MemberService 객체가 프록시 객체로 생성된 것을 확인할 수 있습니다. 또한, @MethodAop
가 적용된 hello 메소드에 Advice 로직이 수행된 것을 확인할 수 있습니다.
|
2021-12-21 00:06:40.720 INFO 35688 --- [ Test worker] c.example.aop.pointcut.AtAnnotationTest : memberService Proxy = class com.example.aop.member.MemberServiceImpl$$EnhancerBySpringCGLIB$$a8e51818 |