CGlib动态代理复习

来源:互联网 发布:手机倒啤酒软件 编辑:程序博客网 时间:2024/06/03 09:36

CGlib动态代理复习

1.要点:

A.代理类实现MethodInterceptor接口 B.复写incept方法; C.使用单例模式进行编写;D.Enhancer.create方法的使用

2.口诀:拦 拦 贷 单
3.Code Show

 */public class CGlibProxy implements MethodInterceptor【拦】 {    private static CGlibProxy instance=new CGlibProxy();    private CGlibProxy() 【单】{    }    public static CGlibProxy getInstance(){        return instance;    }    public <T> T getProxy(Class<T> cls){        return (T) Enhancer.create(cls,this);    }    @Override    public Object intercept【拦】(Object o, Method method, Object[] objects, MethodProxy proxy) throws Throwable {        before();        Object result = proxy.invokeSuper(o, objects);【贷】        after();        return result;    }    public void after() {        System.out.println("前置方法");    }    public void before() {        System.out.println("tango");    }}
原创粉丝点击