代理方式>>>Java Proxy、Cglib、Aspect j<Eclipse插件编译>、Instrumentation<类加载的时候ASM工具>。
那就让我们先从这俩个问题出发>>>
虽然都是操作字节码,那生成一个什么样的动态代理Class?又是如何生成的讷?
第一:实现目标接口;
第二:实现接口中所有的方法;
>>代理前置逻辑
>>原有业务逻辑
>>代理后置逻辑
动态代理>>顾名思义指在运行时:
>>动态的生成Class字节码<ASM工具,ProxyGenerator>
>>动态的装载ClassLoader<ClassLoader.defineClass()>
>>动态实例化<Reflect反射>