大纲 代理 proxy cglib 小结 一.代理 为什么要用代理?其实就是希望不修改对象的情况下,增强对象. 静态代理: 静态代理模式,需要代理类和目标类实现同一接口,代理类的方法调用目标类的方法,调用方法的前后实现需要增强的逻辑. 静态代理有一个问题就是,每个代理类和目标类一一对应,需要代理的类多的情况,需要大量的代理类,难以维护. 动态代理: 动态代理就是运行时动态生成的类,并不是在编译时期. 动态代理有两种不同的方式,一种是jdk反射包下的的Prxoy,一种是cglib. 二.Proxy