Spring aop報錯:com.sun.proxy.$Proxy cannot be cast to xxx


准備使用AOP記錄所有NamedParameterJdbcTemplate操作數據時的所有日志,沒想到出現這個錯誤,折騰了好久,終於找出原因

解決方案:在 aop-config配置添加上:

proxy-target-class="true"

 

貼上我的配置AOP配置:

 <aop:config proxy-target-class="true">
        <aop:pointcut id="pointcut" expression="execution(public * org.xx.util.JdbcUtil.*(..))"/>
        <aop:aspect id="logAspect" ref="logInterceptor">
        <aop:before method="before" pointcut-ref="pointcut"/>
        <aop:after-returning method="afterRunning" pointcut-ref="pointcut"/>
        </aop:aspect>
    </aop:config>

 

 按照博客的說法:http://blog.csdn.net/oathevil/article/details/7244694

注意:proxy-target-class屬性值決定是基於接口的還是基於類的代理被創建。如果proxy-target-class 屬性值被設置為true,那么基於類的代理將起作用(這時需要cglib庫)。如果proxy-target-class屬值被設置為false或者這個屬性被省略,那么標准的JDK 基於接口的代理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM