gpt4 book ai didi

java - 创建方面,从方法中检索对象并返回另一个对象

转载 作者:行者123 更新时间:2023-12-02 09:41:05 25 4
gpt4 key购买 nike

我正在尝试编写一个方面(在 Spring 中),它从我的包中的方法获取输入参数,进行一些操作并向该方法返回结果。

这可能吗?

例如:

public MyClass {

Public void execute (Object object)
{
//doSomeLogic with the returned object from the aspect
}
}

@Aspect
public class ExecutionAspect {




@Before(// any idea?)
public void getArgument(JoinPoint joinPoint) {


Object[] signatureArgs = joinPoint.getArgs();
for (Object signatureArg: signatureArgs) {
MyObject myObject=(MyObject)signatureArg;
//do some manipulation on myObject
}
//Now how do I return the object to the intercepted method?


}

谢谢,射线。

最佳答案

如果您想更改返回值,则必须使用@Around建议。

@Aspect
public class AroundExample {

@Around("some.pointcut()")
public Object doSomeStuff(ProceedingJoinPoint pjp) throws Throwable {

Object[] args = joinPoint.getArgs(); // change the args if you want to
Object retVal = pjp.proceed(args); // run the actual method (or don't)
return retVal; // return the return value (or something else)
}

}

该机制的描述如下:Spring Reference > AOP > Around Advice

关于java - 创建方面,从方法中检索对象并返回另一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18226348/

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