Java面向方面编程概述 - 编程入门网
可以在你自己的应用程序上单独运行它。你只有看到它如何工作,才能真正明白一个概念,所以让我们使用JBoss AOP中的例子来说明所有这些东西是如何合作的。在本文剩余的部分,我们将使用AOP构建一个简单的追踪框架。
定义一个****** 首先要做的是实现我们的小跟踪框架,来定义将做实际工作的******。 JBoss AOP中的所有的******必须实现org.jboss.aop.Interceptor接口。
JBoss AOP中被监听的所有字段、构造器和方法被转化为一个普通的Invocation调用。方法参数被装入一个Invocation对象,然后一个方法、字段访问或者构造器的返回值被装入一个InvocationResponse对象。Invocation对象还驱动******链。为了解释清楚,我们来看看在一个例程中所有这些对象如何使用。
上面的******将监听一个字段、构造器或者方法的所有调用。如果调用类型是一个方法或者构造器,那么带有方法或者构造器签名的跟踪信息将被输出到控制台。 附加一个****** 好的,这样我们就已经定义好******了。但是我们如何把这个******附加到一个实际的类中呢?为了实现这个目的,我们需要定义一个切入点(pointcut)。对于JBoss AOP来说,切入点在一个XML文件中被定义。让我们来看看它看起来是什么样的。
上面的切入点把TracingInterceptor附加到一个名为POJO的类中。这似乎有点麻烦;我们必须为我们想跟踪的每个类创建一个切入点吗?幸运的是,******-切入点的类属性可以使用任何正则表达式。因此,如果你想追踪每个JVM加载的类,类的表达式将变为 .*。 如果你只想追踪某个特定的包,那么表达式将是com.acme.mypackge.*。 当独立运行JBoss AOP时,任何适合META-INF/jboss-aop.xml模式的XML文件都将在JBoss AOP运行时间载入。如果相对路径被包含在任何JAR中或者目录被包含在你的CLASSPATH中,特定的XML文件将在启动时被JBoss AOP运行时间载入。 Java面向方面编程概述(3)时间:2010-12-05运行例程 我们将使用上面定义的切入点运行这个例程。POJO类如下。
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |