我正在为我们系统的方法输入验证写一些方面:
- 每个方法的返回对象都派生自一个公共基类,该基类有一个属性保存返回代码。
- 切入点定义要拦截的包
- 编写验证方法输入的方面。如果验证成功,则继续()执行方法。如果失败,设置方法返回对象的返回码属性,直接返回。
我的问题是:除了基类之外,如何获得真正的返回对象类?我只能知道我应该返回的基类,而不是真正的类。我在 ProceedingJointPoint 中一无所获,getSignature() 只有类名......
我正在为我们系统的方法输入验证写一些方面:
我的问题是:除了基类之外,如何获得真正的返回对象类?我只能知道我应该返回的基类,而不是真正的类。我在 ProceedingJointPoint 中一无所获,getSignature() 只有类名......
要获得方法的返回类型,您必须将 ProceedingJoinPoint 的签名转换为 MethodSignature ( http://www.eclipse.org/aspectj/doc/next/runtime-api/org/aspectj/lang/reflect/MethodSignature.html)。这将为您提供 .getReturnType() 方法,它应该为您提供您想要的。