spring aop 实现过程中踩过的坑:java.lang.ClassCastException: com.sun.proxy.$Proxy2 cannot be cast to XXXXX

学习Spring的过程中遇到如下的异常:

贴上自己创建的被代理对象如下图:

spring aop 实现过程中踩过的坑:java.lang.ClassCastException: com.sun.proxy.$Proxy2 cannot be cast to XXXXX_第1张图片

 原因分析: Spring AOP实现方式有两种,一种使用JDK动态代理,另一种通过CGLIB来为目标对象创建代理。如果被代理的目标实现了至少一个接口,则会使用JDK动态代理,所有该目标类型实现的接口都将被代理。若该目标对象没有实现任何接口,则创建一个CGLIB代理,创建的代理类是目标类的子类。

结论:使用JDK动态代理的方式,需要在配置文件中添加如下配置信息:

最后顺利解决遇到的问题!

 

你可能感兴趣的:(spring aop 实现过程中踩过的坑:java.lang.ClassCastException: com.sun.proxy.$Proxy2 cannot be cast to XXXXX)