<aop:config proxy-target-class="true">
<aop:aspect ref="tm" id="tmAOP">
<aop:around method="around"
</aop:aspect>
</aop:config>
proxy-target-class属性值决定是基于接口的还是基于类的代理被创建。首先说明下proxy-target-class="true"和proxy-target-class="false"的区别,为true则是基于类的代理将起作用(需要cglib库),为false或者省略这个属性,则标准的JDK 基于接口的代理将起作用。
---------------------
作者:羽林军参谋长
来源:CSDN
原文:https://blog.csdn.net/shaoweijava/article/details/76474652
基于接口的还是基于类的代理被创建的区别
JDK的动态代理依靠接口实现,如果有些类并没有实现接口,则不能使用JDK代理,这就要使用cglib动态代理了。
Cglib动态代理
JDK的动态代理机制只能代理实现了接口的类,而不能实现接口的类就不能实现JDK的动态代理,cglib是针对类来实现代理的,他的原理是对指定的目标类生成一个子类,并覆盖其中方法实现增强,但因为采用的是继承,所以不能对final修饰的类进行代理。
---------------------
作者:艾伦蓝
来源:CSDN
原文:https://blog.csdn.net/lan12334321234/article/details/70048780