如何使用 Spring AOP 建议静态方法?

2024-05-10

在执行类的静态方法之前和之后需要完成一些日志记录。我尝试使用 Spring AOP 来实现这一点,但它不起作用,而对于正常方法来说它起作用。 请帮助我理解如何实现这一点,如果可以使用注释来完成,那就太好了。


也许您应该在使用 Spring AOP 之前阅读文档。这句话对于任何工具都适用。如果你读过它,你会注意到Spring AOP是基于动态代理 https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#aop-introduction-proxies,这意味着它只适用于

  • 非静态公共方法(如果您使用 CGLIB 而不是 JDK 代理,也可以是受保护的或包范围的方法)
  • 在春豆上。

该手册还指出您可以通过加载时编织 (LTW) 使用完整的 AspectJ https://docs.spring.io/spring/docs/current/spring-framework-reference/core.html#aop-using-aspectj如果你需要更强大的AOP解决方案。在这种情况下,您还可以拦截静态方法以及 Spring AOP 用户梦寐以求的更多东西。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 Spring AOP 建议静态方法? 的相关文章

随机推荐