[Spring,AOP]同一个类方法调用方法,没有触发被调用方法的环绕通知,是怎么回事?

一个类中有两个方法,一个是创建凭证(create),一个是重新创建凭证(reCreate,先删除,再创建),在创建凭证上加了@Log(自定义注解,用来记录操作日志),用重新创建调用创建时,没有触发@Log的环绕通知。
如图所示:当前是reCreate方法,在方法内调用create方法,create方法用@Log标注了,当前方法没有标注。
image.png

阅读 2.5k
2 个回答

内部调用直接使用的是当前实例,没有调用代理类的方法,自然也没有spring的方法增强逻辑处理。
解决方案是手动获取spring代理过的对象,强制走代理方法。
https://www.tqwba.com/x_d/jis...

方法类调用不走代理类,就不会触发aop

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题