Closed. This question needs to be more focused。它当前不接受答案。












想改善这个问题吗?更新问题,使其仅关注editing this post的一个问题。

6年前关闭。



Improve this question




首先让我注意,我使用AspectJ并且很喜欢它,但是我还能做什么呢。

我知道AspectJ可以用于日志记录。在某些情况下,它用于事务控制-大多与注释结合使用。
像Spring Roo一样,AspectJ也可以用于通过(代码生成的)方法增强类。

但是我相信AspectJ和AOP通常可以用于以下方面:日志记录,事务控制和模拟子类。

那么,AspectJ和AOP还有哪些有用的用例?

最佳答案

  • 权限检查
  • 中断操作需要很长时间
  • 在单独的线程中甚至在其他机器上的不同进程或事件的上下文中运行操作
  • 监控
  • 在调用之前准备任何数据/环境,并在调用
  • 之后处理结果
  • 打开/关闭资源

  • 编辑

    尽管自我给出答案以来已经过去了很多年,但我还是决定添加以下内容以使答案更加完整。
  • 安全检查。
  • 修复了您无法更改的API错误或行为。例如,在某些情况下返回false但应该返回true的boolean方法。您可以使用AspectJ修复此问题。
  • 关于java - AspectJ有什么用? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4313789/

    10-11 06:09