我是 Spring AOP 的新手。到目前为止我发现的是,在运行时我们可以在方法调用之前或之后调用用户定义的方法(建议)。我们还可以更改方法内的变量值分配。
现在我想在运行时用另一个方法替换一个方法调用。假设在 Java 代码中我调用了方法 A()。在运行时,借助 AOP 配置文件,我想在 A() 的同一位置调用方法 B() 而不是 A()。
请让我知道如何实现这一点。提前致谢!
最佳答案
尝试周围的建议,这是来自 Spring 文档的示例
@Aspect
public class AroundExample {
@Around("com.xyz.myapp.SystemArchitecture.businessService()")
public Object doBasicProfiling(ProceedingJoinPoint pjp) throws Throwable {
// start stopwatch
Object retVal = pjp.proceed();
// stop stopwatch
return retVal;
}
}
您可以跳过原始方法调用并调用任何其他方法
关于java - 使用 Spring AOP 如何在运行时用另一个方法替换一个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19951290/