【问题标题】:How to change the return value by spring aop [closed]如何通过spring aop更改返回值[关闭]
【发布时间】:2012-12-10 16:04:54
【问题描述】:

我在DAO层有一个有返回值的方法,我想通过spring AOP改变返回值,根据不同的需求,然后发送到SERVICE层对应的方法;但我不知道该怎么做。

【问题讨论】:

  • 我无法在 Spring AOP 方面为您提供帮助,但如果您需要 Stackoverflow 社区的帮助,我强烈建议您发布一些源代码。

标签: java spring aop


【解决方案1】:

您可以将@Around 方面应用于应修改其返回类型的方法。您可以查看我的blog post,了解如何将 Spring AOP facet 添加到 Spring 应用程序,然后编写 @Around aspect。我将此方面用于方法的Memoizing 结果,但在您的情况下,您将获取ProceedingJoinPoint.proceed() 的返回值,将其类型转换为适当的类,然后对其进行修改并返回它。

如果您打算完全返回一个完全不同的对象,那么这将导致 ClassCastException,除非实际返回的对象是返回类型的子类。

【讨论】:

    猜你喜欢
    • 2019-03-22
    • 2014-09-20
    • 1970-01-01
    • 1970-01-01
    • 2017-06-09
    • 2022-01-06
    • 1970-01-01
    • 2021-09-05
    • 1970-01-01
    相关资源
    最近更新 更多