当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

Client客户端调用

发表于: 2010-02-08   作者:cywhoyi   来源:转载   浏览:
摘要: import java.lang.reflect.Method; import net.sf.cglib.proxy.Enhancer;import net.sf.cglib.proxy.Callback;import net.sf.cglib.proxy.NoOp;import net.sf.cglib.proxy.CallbackFilter; public class MultiCall

import java.lang.reflect.Method;

import net.sf.cglib.proxy.Enhancer;
import net.sf.cglib.proxy.Callback;
import net.sf.cglib.proxy.NoOp;
import net.sf.cglib.proxy.CallbackFilter;

public class MultiCallBack
{
   
    /**
     * CallbackFilter过滤不需要的代理对象
     *
     * @param args [参数说明]
     *
     * @return void [返回类型说明]
     * @exception throws [违例类型] [违例说明]
     * @see [类、类#方法、类#成员]
     */
    public static void main(String[] args)
    {
        Enhancer enhancer = new Enhancer();
        enhancer.setSuperclass(Monkey.class);
        enhancer.setCallbacks(new Callback[] {new MyMethodInterceptor(), NoOp.INSTANCE});
        enhancer.setCallbackFilter(new CallbackFilter()
        {
        /**
         * 通过方法名判断是否需要代理
         */      
            public int accept(Method arg0)
            {
                // 方法getType使用回调组中的第二个回调器
                if (arg0.getName().equals("getType"))
                    return 1;
                else
                    return 0;
            } 
        });
        Monkey monkey = (Monkey)enhancer.create();
        monkey.getType();
        monkey.eat();
        monkey.getClass();
        monkey.show();
        monkey.speak("火星语");
       // monkey.speak2("英语");
    }
   
}

Client客户端调用

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号