mdp*_*thi 7 aop aspectj execution pointcuts
我是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
}
Run Code Online (Sandbox Code Playgroud)
什么时候不工作?如果我将所有三个切入点与OR组合在一起.
什么时候工作?如果我只保留两个切入点就可以了.
我违反了@around建议的任何规则.是否可以有多个执行/切入点?
希望得到答案......
ada*_*amr 13
我有同样的问题,但更好的解决方案IMO是(适合我):
@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
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12728 次 |
| 最近记录: |