Как получить информацию о методе вызывающего абонента от Around посоветовать - PullRequest
1 голос
/ 12 апреля 2011

ThisJoinPoint может получить только информацию о текущем методе, в любом случае, чтобы получить информацию о методе вызывающего абонента?

Ответы [ 2 ]

3 голосов
/ 12 апреля 2011

Вы можете попробовать специальную переменную thisEnclosingJoinPointStaticPart, которая содержит статическую часть вмещающей JoinPoint.

Упомянуто здесь (пример) и здесь (документы)

Или, если используется AspectJ на основе аннотаций, перейдите к параметрам метода совета, например ::

@Before("call( /* your pointcut definition */ )")
public void myCall(JoinPoint.EnclosingStaticPart thisEnclosingJoinPointStaticPart)
{
     // ...
}

Упомянуто здесь

0 голосов
/ 19 сентября 2017
@Aspect
public class LoggingAspect {

    @Before(value = "execution(public * findAll())")
    public void beforeAdvice(JoinPoint pp){
        System.out.println("before advice called ....get calling method Signature"+pp.getSignature());
        System.out.println("before advice called ....get calling method name"+pp.getSignature().getName());
    }

}
...