AOP重用切入点表达式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38409944/article/details/82701289

第一步:
定义一个方法,用于声明切入点表达式。一般该方法为空,没有其他代码。
第二步:
使用@Pointcut声明切入点表达式:

public class MynewAspect {

    @Pointcut("execution(public * calculator.CalculatorImpl.*(..))")
    public void decare(){}
    @Before("decare()")
    public void before(JoinPoint joinPoint){
        System.out.println("方法:"+joinPoint.getSignature().getName());
    }
}

其他通知如何引用该表达式,如果不在一个类下?
引用的时候加全路径

public class MyAspect {

    @Before("calculator.MynewAspect.decare()")
    public void before(JoinPoint joinPoint){
        System.out.println("参数:"+Arrays.asList(joinPoint.getArgs()));
    }
}

猜你喜欢

转载自blog.csdn.net/qq_38409944/article/details/82701289