WEB开发网
开发学院软件开发Java 用AspectJ构造方面库 阅读

用AspectJ构造方面库

 2010-03-18 00:00:00 来源:WEB开发网   
核心提示: 从AspectJ 5开始支持的注释是另外一种构造方面库的技术基础,Java5引入了注释这种类型,用AspectJ构造方面库(3),它以注释的形式来表达程序中各成员的元数据信息,采用符号@标示,AJDT从多个方面扩展了Eclipse的Java开发环境使其支持面向方面的编程,当在Eclipse平台上

从AspectJ 5开始支持的注释是另外一种构造方面库的技术基础。Java5引入了注释这种类型,它以注释的形式来表达程序中各成员的元数据信息,采用符号@标示。 Java5中可以被注释修饰的Java程序成员有很多,AspectJ 5能支持的注释包括修饰方面、方法、属性、构造函数和通知,修饰方法和通知的参数的注释也能支持,但是不支持pointcut和declare语句上的注释。为了支持注释类型,AspectJ 5扩展了pointcut语法,可以匹配存在或者不存在的注释类型。例如清单 3中的名叫onewayMethod的pointcut可以匹配所有被注释@Oneway修饰的方法调用。

清单 3 含有注释的pointcut

public aspect C { 
pointcut onewayMethod: call(@Oneway * *(..)); 
} 

AspectJ 5对注释的支持简化了实施库的方法,我们可以很容易地想到,在把方面库实施到应用程序时,可以利用注释标明具体的切入点的位置。在构造方面库文件时,只需要定义好与注释相关的切入点,并规定该切入点上的具体的通知内容就可以了。我们同样会在下面的章节中介绍使用注释制作简单的方面库的过程。

3.使用抽象方面构造方面库

曾经有一段时间,我们只有在获得了所有源代码的情况才才能顺利的编译用到了AspectJ的软件项目。现在情况当然已经和以往大大不同,由于 AspectJ今年来的迅速发展,在项目中使用AspectJ的要求大大放松了。我们可以在没有源代码的情况下进行AOP开发。无论是程序主逻辑部分还是 Aspect部分,都可以用jar文件的形式提供,并且能够顺利的通过AspectJ的编译。

下面我们将通过一个例子演示如何在AJDT中构造Aspect库。在构建这个例子的过程中,我们用到了Eclipse及其上的AJDT插件。这两个工具可以分别从http://www.eclipse.org 和http://www.eclipse.org/ajdt 上下载。AJDT从多个方面扩展了Eclipse的Java开发环境使其支持面向方面的编程。当在Eclipse平台上安装了AJDT插件之后,我们现在能新建AspectJ项目和创建新的Aspect了(图 1)。

上一页  1 2 3 4 5 6  下一页

Tags:AspectJ 构造 方面

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接