1.JDK代理只能针对有接口的类的接口方法进行动态代理
2.JDK代理也不能对private方法进行动态代理
2.Cglib基于继承来实现代理,无法对static、final类进行代理
3.Cglib由于基于继承实现代理,无法对private、static方法进行代理
------------------------------
Spring AOP
1.如果目标对象实现了接口,则默认采用JDK动态代理
2.如果目标对象没有实现接口,则采用Cglib进行动态代理
3.如果目标对象实现了接口,且强制使用Cglib代理,则使用Cglib代理