Spring AOP – 带有注释的每个方法的切入点

我试图定义一个切入点,它将捕获每个使用(即) @CatchThis注释的方法。 这是我自己的注释。

此外,我想访问该方法的第一个参数,它将是Long类型。 可能还有其他争论,但我不关心它们。


编辑

这就是我现在所拥有的。 我不知道的是如何传递用@CatchThis注释的方法的第一个参数。

 @Aspect public class MyAspect { @Pointcut(value = "execution(public * *(..))") public void anyPublicMethod() { } @Around("anyPublicMethod() && @annotation(catchThis)") public Object logAction(ProceedingJoinPoint pjp, CatchThis catchThis) throws Throwable { return pjp.proceed(); } } 

这样的事应该做​​:

 @Aspect public class MyAspect{ @Pointcut(value="execution(public * *(..))") public void anyPublicMethod() { } @Around("anyPublicMethod() && @annotation(catchThis) && args(.., Long ,..)") public Object logAction( ProceedingJoinPoint pjp, CatchThis catchThis, Long long) throws Throwable { return pjp.proceed(); } }