public class CglibProxy implements MethodInterceptor
{
private Enhancer enhancer=new Enhancer();//Enhancer是什么?有什么用?
public Object getProxy(Class clazz){
enhancer.setSuperclass(clazz);
enhancer.setCallback(this);//设置回调是什么意思?以及设置回调有什么作用呢?
return enhancer.create();
}
因为老师也不会,照抄就行,全网就没有讲这个的博客。
Enhancer
的create()方法 用来创建 以该类为父类的 代理类(当然是父类的子类)
然后回调函数 就是为了执行public Object intercept() 方法的.
在这个方法进行反射吧(我感觉跟Jdk代理差不多了,这行不一定准,不过前两行应该是对的)
以上是研究一上午源码和结合文字说明 领悟到的
我在其它地方(chuanzhi,打名字不让我发)中看到了,这个回调函数就是给代理类执行时需要运行这个方法intercept,那么穿本类的实例进去,之后就会回调这个方法,实现动态代理。
是啊为什么不讲呢 难道是以前哪里讲过?现在不讲了?这个老师讲的课是我看慕课网里的课里让我听的最糊涂的课,其他的老师讲完都是后然开朗,这个老师讲的课能把我晕的一塌糊涂,没办法只能自己从其他渠道学习了
这都是最期待老师解释的地方,可惜都没讲。。。
我一路学过来一直看你的头像
好恶心啊 能不能换一张