Spring AOP:使用返回后方法获取返回类型

问题描述 投票:1回答:2

我试图在Spring AOP中实现after-returning,并且基本实现正常:

public void afterExecution(JoinPoint jp){
    System.out.println("Returning");
    System.out.println("Returning from: " + jp.toString());
            // How to get the return type object here?
}

如何通过上述方法获取返回类型对象?

这是我在上下文xml文件中添加的内容:

<aop:pointcut id="emplRet" expression="execution(java.lang.String com.model.Employee.get*())"/>
    <aop:aspect ref="aspect">
        <aop:after-returning pointcut-ref="emplRet" method="afterExecution"/>
    </aop:aspect>

请咨询。

java spring spring-aop
2个回答
2
投票

您可以指定

returning="retVal"

在切入点表达式中,然后将一个参数添加到您的方法中。您必须在retVal建议中引用绑定值after-returning

Spring AOP documentation.


0
投票

让我们通过示例了解这一点:

我有一堂课:enter image description here

对于此getter方法,即getList,我想在我的Aspect类中获取returnType。

我可以使用@AfterReturning批注的returning参数访问returnType。

例如:enter image description here

该方法的输出类似于:enter image description here

希望它澄清。

© www.soinside.com 2019 - 2024. All rights reserved.