今天自己搭建框架的時候,出了這個問題,出現這個異常,spring框架AOP才用JDK動態代理只能對實現了接口的類實現動態代理,而不能針對類,我自己在搭建項目的時候沒有用接口的模式,所以在應用啓動時候,配置AOP事務 的時候會掃描你的service層,service層用到了Dao層的接口代理模式(spring 默認) 因爲我沒有采用接口模式編程,所以報錯...
如果不才用接口模式那麼 就要用CGLIB
而CGLIB是針對類實現代理,(主要生成一個子類,覆蓋其中的方法)
因爲是繼承,所以該類或方法最好不要聲明成final的類...
在applicationContext.xml 配置中加上
<aop:aspectj-autoproxy proxy-target-class="true"/>
把cglib.jar導入工程中即可以