为了账号安全,请及时绑定邮箱和手机立即绑定

我可以在aop java中声明围绕其自身的建议吗?

我可以在aop java中声明围绕其自身的建议吗?

慕码人2483693 2021-05-10 16:36:00
我做了一个注解(@MethodLogger),并在上面写了一个方面,该方面基本上记录了方法的时间并保持存储。因此,在我放置该注释的任何方法上,它都可以正常工作,但是在特殊的用例中,我需要监视建议本身:例如:@MethodLogger@Around("some function specified")public Object method(ProceedingJoinPoint pjp) throws Throwable{// code here}但是这个东西行不通。它从不调用我的注释方面。
查看完整描述

1 回答

?
ibeautiful

TA贡献1993条经验 获得超5个赞

这并不在Spring AOP工作,如记录在这里:

向其他方面提供建议?

在Spring AOP中,不可能使方面本身成为其他方面的建议目标。@Aspect类上的注释将其标记为一个方面,因此将其从自动代理中排除。

如果要执行此操作,则需要在Spring中通过LTW激活完整的AspectJ。然后,如果您知道建议的方法名称,则可以直接将其作为目标。adviceexecution()如果您通常希望将切入点匹配限制为建议执行或通过排除匹配切入点,则甚至有一个特殊的切入点指示符!adviceexecution()。有关更多详细信息,请查看AspectJ文档。


查看完整回答
反对 回复 2021-05-19
  • 1 回答
  • 0 关注
  • 120 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信