我想写一个与注释字段上的公共方法执行相匹配的切入点.这怎么可能不起作用.get(@Important)按预期(单独)工作,但它当然会匹配对该字段的所有访问.我想将此限制为仅公共方法执行.
这有可能吗?我没有编译错误,但另一方面它似乎没有工作..
public class Counter {
private int count = 0;
public void add(int value) {
count = count + value;
}
}
public class Visitors {
@Important
Counter counter = new Counter()
public void increaseCounter() {
counter.add(1);
}
}
Run Code Online (Sandbox Code Playgroud)
作品:
@Pointcut(value = "get(@Important * *)")
void testPointCut() {
}
Run Code Online (Sandbox Code Playgroud)
不起作用:
@Pointcut(value = "get(@Important * *) && execution(public * *(..))")
void testPointCut() {
}
Run Code Online (Sandbox Code Playgroud)