목차
Spring AOP Pointcut 표현식 - this, target
Spring AOP Pointcut 표현식 - 매게변수 전달
Spring AOP Pointcut 표현식 - bean
Spring AOP Pointcut 표현식 - @annotation, @args
Spring AOP Pointcut 표현식 - @target, @within
Spring AOP Pointcut 표현식 - args
Spring AOP Pointcut 표현식 - within
Spring AOP - Pointcut 표현식 execution
Spring 핵심원리 고급편 - Pointcut
execution
execution( [접근제어자] 리턴타입 [선언타입] 메서드이름 (파라미터) [예외] )
execution 는 Pointcut 표현식에서 가장 많이 사용되는 명시자 입니다.
execution 는 메소드의 접근 제어자, 리턴 타입, 메소드가 선언된 패키지, 클래스 정보, 메소드 파라미터, 예외처리 정보를 이용해 다양한 조건으로 Pointcut 을 적용할 수 있도록 제공합니다.
execution(public String com.example.aop.member.MemberServiceImpl.hello(String))
접근 제어자 : public 인 메소드
리턴 타입 : String
선언 타입 : com.example.aop.member.MemberServiceImpl
메서드 이름 : hello
파라미터 : String
예외 : 생략
@Testvoid exactMatch(){ // public java.lang.String com.example.aop.member.MemberServiceImpl.hello(java.lang.String) pointcut.setExpression("execution(public String com.example.aop.member.MemberServiceImpl.hello(String))"); assertThat(pointcut.matches(helloMethod, MemberServiceImpl.class)).isTrue();}