Skip to content

[Chapter 07] Advice 애너테이션에 pointcut 표현식 설정 #76

Discussion options

You must be logged in to vote

위에서 첨부하신 그림에서 보면
value는 어떤 조인 포인트에 어드바이스를 연결하는데 사용되는 포인트 컷 표현식을 지정한다.
pointcut어떤 조인 포인트에 어드바이스를 연결하는데 사용되는 포인트 컷 표현식을 지정하는데,
pointcut이 지정될 경우에는 value설정을 대체한다.라고 나와있습니다.

그래서 value는 간단한 포인트 컷 표현식 지정
pointcut는 보다 세세한 포인트 컷 표현식 지정에 사용된다고 생각이 드는데

@Before이나 @After 같은 경우에는 어드바이스의 실행시점이 이미 정해져 있기 때문에 세세하게 지정할 필요 없이 간단하게 포인트 컷 지정을 해도 되서 pointcut이라는 속성이 없는 것 같고

@Aroundpointcut대신에 메서드의 파라미터로 ProceedingJoinPoint를 가져와서 조인포인트를 제어하기 때문에 pointcut이라는 속성이 없는 것 같습니다.

@AfterReturning은 메서드가 성공적으로 실행되고 난 후에 어드바이스를 실행하고
@AfterThrowing은 메서드가 예외를 던진 후에 어드바이스를 실행하고 추가로 throwing속성을 사용해서 던진 예외도 다시 바인딩합니다.
이렇게 두 어노테이션은 메서드의 실행 결과에 따라서 동작을 수행해야 되므로 보다 세밀한 조인 포인트 지정이 필요한 pointcut속성이 존재하는 것 같습니다.


참고자료

https://stackov…

Replies: 2 comments

Comment options

You must be logged in to vote
0 replies
Answer selected by coalong
Comment options

You must be logged in to vote
0 replies
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chapter07 스프링 AOP 와 테스트, 자동 설정 원리
3 participants