티스토리 뷰
*
@Before, @AfterReturning, @AfterThrowing, @After, @Around
*
Before Advice : 조인포인트 전에 실행되는 advice
*
After returning advice : 조인포인트에서 성공적으로 리턴 된 후 실행되는 advice
*
After throwing advice : 예외가 발생하였을 경우 실행되는 advice
*
After advice : 조인포인트에서 메서드의 실행결과에 상관없이 무조건 실행되는 advice, 자바의 finally와 비슷한 역할을 한다.
*
Around advice : 조인포인트의 전 과정(전, 후)에 수행되는 advice
*
execution() : 가장 대표적이고 강력한 지시자로, 접근제어자, 리턴 타입, 타입 패턴, 메서드, 파라미터 타입, 예외 타입 등을 조합해서 메서드까지 선택가능한 가장 정교한 포인트컷을 만들수 있다.
*
within() : 타입 패턴만을 이용하여 조인포인트를 정의한다.
*
this : 빈 오브텍트의 타입의 조인토인트를 정의한다.
*
target : 대상객체의 타입 비교를 이용한 조인포인트를 정의한다.
*
args : 메서드의 파라미터 타입만을 이용하여 조인포인트를 정의한다.
*
@target : 특정 어노테이션이 정의된 객체를 찾는 조인포인트를 정의한다.
*
@args : 특정 어노테이션을 파라미터로 받는 오브젝트를 찾는 조인포인트를 정의한다.
*
@within : @target과 유사하게 특정 어노테이션이 정의된 객체를 찾는데, 선택될 조인포인트 메서드는 타겟 클래스에서 선언이 되어있어야 한다.
*
@annotation : 조인 포인트 메서드에 특정 어노테이션을 찾는 조인포인트를 정의한다.