java - 使用 Spring AOP 如何在运行时用另一个方法替换一个方法?

标签 java methods spring-aop

我是 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/

相关文章:

java.net.SocketException : Permission denied: recv failed

java - OpenCV 错误 : Assertion failed (ksize. 宽度 > ...... 对于 GaussianBlur

java - 如何为java项目创建jenkins作业

java - 让项目更加OO Java

java - AspectJ:自定义 *.aj 文件被忽略

java - 如何存储文件数据行并通过它的方法计算成字母并在另一个文件中打印字母等级?

javascript/jQuery 在方法中传递参数

android - 找不到符号方法getLayoutInflater。

java - 在 App Engine 上使用 Spring AOP 导致 StackOverflowError

java - 如何检测/建议 Spring Data (JPA) 存储库?