我有一个在我的 Web 应用程序中使用 Spring AOP 框架的类,就像下面显示的代码一样。我想知道如果我实现以下代码,为什么 Spring AOP 能够跟踪 add() 但不能跟踪 multiple()。
public interface calculator {
public void add();
public void multiple();
}
public class calculatorImpl implements calculator {
public void add() {
multiple();
}
public void multiple() {}
}
我做了一个实验,发现下面的代码工作正常。这意味着 Spring AOP 能够同时跟踪 add 和 multiple 函数。
ICalculator calcProxy = (ICalculator) context.getBean("calculatorProxy");
calcProxy.add();
calcProxy.multiple();
我认为这一定是multiple()
代理 bean 注入的原因,而multiple()
incalculatorImpl
类不是,因此 Spring AOP 无法跟踪它。如果我错了,请纠正我。
我的下一个问题。是否有解决这个问题的方法,add()
真正需要multiple()
通过 Spring AOP 执行和获取跟踪?