gpt4 book ai didi

aop - 方面J : Issue when combining multiple pointcuts in @Around advice

转载 作者:行者123 更新时间:2023-12-03 03:16:01 25 4
gpt4 key购买 nike

我是 AspectJ 的初学者,因此请指导我按照以下方法解决发生的问题。

    @Aspect
public class TestAop {

@Pointcut("execution(public * com.packg.foo.ClassOne.*(..))")
public void fooPoint()

@Pointcut("execution(public * com.packg.cat.ClassTwo.*(..))")
public void catPoint()

@Pointcut("execution(public * com.packg.roo.ClassThree.*(..))")
public void rooPoint()

@Around("fooPoint() || catPoint() || rooPoint()")
public Object myAdvice(ProceedingJoinPoint joinPoint) {
//do something like joint proceed and all
}

什么时候不工作?如果我用 OR 将所有三个切入点组合起来。

什么时候工作?如果我只保留两个切入点,它就可以工作。

我是否违反了@around建议的任何规则。是否可以有多个执行/切入点?

希望得到答案...

最佳答案

我遇到了同样的问题,但在我看来更好的解决方案是(对我有用):

@Aspect
public class TestAop {

@Pointcut("execution(public * com.packg.foo.ClassOne.*(..)) || execution(public * com.packg.cat.ClassTwo.*(..)) || execution(public * com.packg.roo.ClassThree.*(..))")
public void fooPoint(){}

@Around("fooPoint()")
public Object myAdvice(ProceedingJoinPoint joinPoint) {
//do something like joint proceed and all
}

关于aop - 方面J : Issue when combining multiple pointcuts in @Around advice,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11542181/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com