7

面向方面编程的最佳 Java 工具是什么?

对工具的要求当然是 IDE 支持、表达能力和适当的文档。

4

5 回答 5

6

JBossAOP 和 AspectJ 是两个常用的、成熟的 AOP 框架。另一个流行的选择是 Spring AOP,但它缺少其他两个的一些特性。

JBossAOP 和 AspectJ 都具有相似的特性,一个很大的区别是 AspectJ 依赖于 Java 语言的扩展,而 JBoss AOP 没有。

如果您的 AOP 要求相当简单,那么还值得考虑字节码操作库,例如ASM。我使用 ASM 来实现简单的“around-advice”(即,在方法调用之前和之后注入的代码),它被证明是 JBossAOP 的更轻量级的替代方案。ASM 设计简洁且文档齐全。

于 2008-11-28T12:32:02.253 回答
3

我会说AspectJ。据我所知,IDE 部分是缺乏的,但文档和表达能力是我见过的最好的 AOP 框架之一。

于 2008-11-28T12:24:49.083 回答
2

如果您已经在使用 Spring,则托管对象已经具有AOP 支持。虽然不如 AspectJ 灵活,但它不需要 AspectJ 所做的预编译步骤。

于 2008-11-28T12:32:37.930 回答
0

关于 Spring AOP 支持。默认情况下,它仅与 Spring 可管理对象和基于 AspectJ 的 AFAIK 相关。

我还没有自己检查它,但看起来它允许使用 AOP 和其他对象(例如 Tomcat 下的加载时间编织)。详情在这里

于 2008-11-28T14:40:53.193 回答
0

AOP 与春季休闲这个链接http://rajkrrsingh.blogspot.com/2012/10/spring-aop-tutorial.html

于 2013-02-07T12:46:19.853 回答