BeanNotOfRequiredTypeException异常AOP
在使用aop实现动态代理时,遇到了一个异常,异常如下图:
大概就是我的类明明应该是Programmer,结果显示是$Proxy13,就没生成成功。
发现是在配置文件中,配置aspctj增强时使用了:<aop:aspectj-autoproxy/>
,这个代码默认为proxy-target-class=“false”,这代表当前动态代理使用的是JDK动态代理技术织入增强。而我使用的子类实现接口的方式实现动态代理,jdk的明显不行,应该用cglib才能代理成功。将配置文件改为<aop:aspectj-autoproxy proxy-target-class="true"></aop:aspectj-autoproxy>
,运行成功。