gpt4 book ai didi

java - AspectJ\Spring AOP - 替换整个方法

转载 作者:行者123 更新时间:2023-12-01 23:13:34 26 4
gpt4 key购买 nike

我有以下方法:

 public ClassifyCamel(Camel camel) {

if (camel.isHavingSingleHump()) {
return SINGLE_HUMP_CAMEL;
}
}

是否可以创建一个方面来替换整个方法逻辑?例如:

 @Aspect
.
.

@Before("ClassifyCamel") {

if (camel.isRich) {
return RICH_CAMEL;
}
}

最好。

最佳答案

您可以使用@Around建议在方法执行之前和之后执行一些日志。

在这里您可以查看一个示例:

@Aspect
public class LoggingAspect {

@Around("execution(* com.yourPackage.YourClass.yourMethod(..))")
public void logAround(ProceedingJoinPoint joinPoint) throws Throwable {

System.out.println("Around before is running!");

/*
* IF YOU DON'T DO THIS YOU CAN SKIP YOUR METHOD EXECUTION.
* You can do whatever you need
*/
joinPoint.proceed(); //execute the method.

System.out.println("Around after is running!");

}

}

希望有帮助

关于java - AspectJ\Spring AOP - 替换整个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21558359/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com