Chinaunix首页 | 论坛 | 博客
  • 博客访问: 593649
  • 博文数量: 805
  • 博客积分: 4000
  • 博客等级: 上校
  • 技术积分: 5000
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-17 14:22
文章分类

全部博文(805)

文章存档

2011年(1)

2008年(804)

我的朋友

分类:

2008-10-17 14:26:26

    开发环境:Eclipse3.2.1+JBossIDE1.6
    一,AOP的拦截器应用
    1,新建AOP工程,在新建向导中选择JBossAOP下的JBossAOP Project,输入项目名为:TestAOP, Version为 1.5,结束向导.
    2,系统自动生成AOP配置文件jboss-aop.xml文件,内容如下:
   
   
    3,新建Java类,名为Test,勾选main方法,代码如下:
    package test;

    publicclass HelloAOP {

        /**
        
         */
        publicstaticvoid main(String[] args) {
            // TODO自动生成方法存根
            HelloAOP hello= new HelloAOP();
            hello.sayHello();
        }
        publicvoid sayHello(){
            System.out.println("Hello");
        }
    }
    4,新建拦截器.名为HelloAOPInterceptor.java,并实现Interceptor接口,代码如下:
    package test;

    import org.jboss.aop.advice.Interceptor;
    import org.jboss.aop.joinpoint.Invocation;

    publicclass HelloAOPInterceptor implements Interceptor {

        public String getName() {
            // TODO自动生成方法存根
            return"test.HelloAOPInterceptor";
        }

        public Object invoke(Invocation arg0) throws Throwable {
            // TODO自动生成方法存根
            System.out.println("Hello,AOP!");
            return arg0.invokeNext();
        }

    }
    5,将拦截器和要拦截的类用设置文件联系起来,在”包资源管理”视图下,右击类HelloAOP的sayHello方法,在弹出菜单中选择JBoss AOP->Apply Interceptor(s)…,在Select an Interceptor..面板选择test.HelloAOPInterceptor拦截器类,系统自动更新jboss-aop.xml文件,代码为:
   
   
       
           
       

   

    6,右击HelloAOP类,在弹出菜单中选择”运行方式”->”运行…”,在对话框中选择”JBoss AOP Application”,新建配置项.单击”运行”按钮,控制台出现如下信息:
    Hello,AOP!
    Hello
    即拦截器在sayHello方法调用前被调用.
    二,AOP的Advice应用
    1,新建Java类,名为:HelloAOPAspect.java,代码如下:
    package test;

    import org.jboss.aop.joinpoint.Invocation;

    publicclass HelloAOPAdvice {

        public Object trace(Invocation invocation) throws Throwable{
            System.out.println("进入程序运行点");
            try {
                return invocation.invokeNext();
            }finally {
                // TODO: handle exception
            System.out.println("离开程序运行点");
            }
        }
    }
    2,与HelloAOP文件联系起来,在”包资源管理”视图下,右击类HelloAOP的sayHello方法,在弹出菜单中选择JBoss AOP->Apply Advice…,在Apply Advice…面板勾选Object trace(Invocation invocation),系统自动更新jboss-aop.xml文件,代码为:
   
   
       
       
           
           
       

   

 

[1]   

【责编:landy】

--------------------next---------------------

阅读(267) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~