【Java开源 AOP框架】

 

 AspectJ   点击次数:388

AspectJ是一个面向切面的框架,它扩展了Java语言。AspectJ定义了AOP语法所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件。

 AspectWerkz   点击次数:336

基于Java的简单、动态、轻量级、强大的AOP框架。既强大又简单,有助于更容易的集成AOP到新的或已存在的项目中。
AspectWerkz 主要特性:
1. 运行时和加载时字节码修正:你可以在运行时或编译时轻松的改造任何(旧)应用程序或除了rt.jar以外的外部类库
2. 支持join point模型
3. 支持Annotation:匹配JavaDoc和JSR-175,支持用户自定义Annotation
4. 支持部署多个Aspect定义文件到部署的应用程序(WEB-INF/aop.xml、META-INF/aop.xml)
5. Introduction/内类型声明(也称Mixin),也就是具有添加接口和实现到已存在的类中的能力
6. Annotation定义:定义Aspect使用的运行时Annotation(为JSR-175准备)
7. XML定义:定义Aspect使用的XML;XML可以用来精炼、改写和解析Annotation定义
8. 插件式Aspect管理器能够和IoC框架(如Spring或PicoContainer)一起工作
9. 四种不同的Advice和Introduction部署模型(范围):perJVM(单模式)、 perClass、perInstance 和perThread
10. Advice和Introduction能够动态部署、反部署或重新部署
11. 高性能,使用JIT编译
12. 使用Fine-grained模式语言选择join point
13. 所有Advice能够和所有的join point和各种混合类型的pointcut
14. 脱机变换(可以用作后处理器)
15. Aspect、Advice和Introduction使用POJO编码
16. 目标类可以是正规的POJO,也就是不需要接口
17. 支持通过定义传递参数给Advice和定义可重用的Advice堆栈
18. 元数据被加到类中
19. 简单的用法和配置

 JBoss AOP   点击次数:266


JBoss 4.0带了一个AOP框架。这个框架和JBoss应用服务器紧密地结合,但是你也能够在你的应用中,单独的运行它。

 Spring AOP   点击次数:329

Spring中AOP的实现就是通过动态代理来实现的。作为一种非侵略性的,轻型的AOP framework,你无需使用预编译器或其他的元标签,便可以在Java程序中使用它。

 JAC   点击次数:108

JAC (Java Aspect Components)是一个应用服务器。它为Java2平台、用于Java开发的企业开发环境(J2EE)、和基于Web的分布式应用,提供开放式资源的又一个选择(在GNU次常规公共许可证下发布)。JAC包括统一模型语言(UML)IDE,该UML IDE模块化应用商业逻辑并且自动生成和编译纯商业逻辑Java类。这些类,在JAC容器内执行,可从一组技术和/或商业的横切关系(crosscutting concerns)[1] 如数据持久性、认证、配置文件管理、访问权限检测、演示、和负载平衡中无缝地受益。基于面向方面编程技术(AOP)的JAC将这些关系( concerns)[2]从应用程序的核心商业逻辑中分离出来。

 FastAOP   点击次数:3

FastAOP是一个高性能AOP框架。最初开发该框架是为了支持对大型J2EE应用程序进行性能剖析和监测。它几乎不占用运行时间。FastAOP已经在Websphere和Jboss应用服务器上得到成功测试。


Google
 
Web www.ideagrace.com
  © IdeaGrace 2007