用AspectJ构造方面库
2010-03-18 00:00:00 来源:WEB开发网如果我们希望在一个新的工程中使用方面库,我们需要在工程中指定用到的方面库,并继承方面库中提供的抽象方面。在Eclipse中,我们首先将这个 jar文件加入到工程的"Java Build Path"中,就如同使用一个普通的Java类库一样。随后,我们就可以利用AJDT提供的向导来继承抽象方面了,如图 3所示。
图 3 继承抽象Aspect
查看原图(大图)
在图 3中,我们可以指定在新的Aspect中实现所有的抽象pointcut,这样能让AJDT帮助我们多做一些工作。最后生成并修改后的代码如清单 5所示,它具体化了抽象pointcut,指明这个方面库应用的范围,即切入点是任何函数执行的时刻。
清单 5 继承抽象Aspect
package aspects;
import sample.aspects.library.AbstractTrace;
public aspect Trace extends AbstractTrace {
public pointcut TraceScope():execution(* *(..));
}
从清单 5中我们可以看出,通过使用已有的方面库,用户需要编写的代码变得非常简洁。商务逻辑的开发人员可以不去了解AspectJ的一些高级用法,他们只需要指定哪些时候需要用到方面中提供的功能就可以了。
4.使用注释构造方面库
前面介绍了使用抽象方面构造一个记录踪迹的方面库并实施到具体应用中,这章我们采用注释技术构造一个方面库,以完成同样的功能。
与前面一章相同,首先创建一个AspectJ的工程,工程名为sample.annotation.library。需要注意的是,因为要在工程中使用注释类型,所以JDK依从的版本必须为5.0。如果你目前的缺省设置不是5.0,请如图所示在JDK Compliance中选择"为工程指定一个",设置为5.0。或者在工程的properties对话框中选择Java Compiler页面修改。
更多精彩
赞助商链接