博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
动态代理
阅读量:6675 次
发布时间:2019-06-25

本文共 854 字,大约阅读时间需要 2 分钟。

hot3.png

233033_TRix_3142419.png

package 动态代理;

import java.lang.reflect.Method;

import net.sf.cglib.proxy.Enhancer;

import net.sf.cglib.proxy.MethodInterceptor;
import net.sf.cglib.proxy.MethodProxy;

//cglib动态代理

public class CglibProxy implements MethodInterceptor{

    private Object target;

    /**
     * 创建代理对象
     * targer
     *
     */
    public Object getInstance(Object target){
        //System.out.println(this.target.getClass());
        this.target = target;
        Enhancer enhancer = new Enhancer();
        enhancer.setSuperclass(this.target.getClass());
        //回调方法
        enhancer.setCallback(this);
        //创建代理对象
        return enhancer.create();
    }
    //回调方法
    public Object intercept(Object obj, Method method, Object[] args, MethodProxy proxy) throws Throwable {
        System.out.println("事物开始:类"+obj.getClass()+" 方法名:"+method.getName());
        proxy.invokeSuper(obj, args);
        System.out.println("事物结束");
        return null;
    }
}

233255_GTHS_3142419.png

 

转载于:https://my.oschina.net/u/3142419/blog/1475730

你可能感兴趣的文章
优雅的实现CALayer的"AutoLayout"的两种方案
查看>>
从双十一看阿里云安全的“创世纪”——采访阿里云安全掌门人肖力有感
查看>>
基于django的视频点播网站开发-step4-首页功能
查看>>
告别李国庆,19岁当当的思变与求变
查看>>
汽车电商纷纷折戟,新零售能唱好这出戏吗?
查看>>
localStorage
查看>>
Runtime 从NullSafe源码看消息转发 机制
查看>>
JavaScript 论代码执行上下文
查看>>
这应该是你们想要的 DOS 命令
查看>>
可不可以设计出一个完美的分布式系统?
查看>>
阿里云移动端播放器高级功能---直播时移
查看>>
前端性能优化--懒加载和预加载
查看>>
Java是怎么运行的?
查看>>
利用构建缓存机制缩短Docker镜像构建时间
查看>>
webpack 的 scope hoisting 是什么?
查看>>
2019前端面试题汇总(主要为Vue)
查看>>
js编程
查看>>
云HBase发布全文索引服务,轻松应对复杂查询
查看>>
码农张的Bug人生 - 目录
查看>>
学习webpack4 - 抽离公共代码
查看>>