您好,登錄后才能下訂單哦!
小編給大家分享一下基于Spring AOP proxyTargetClass的行為表現(xiàn)有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
true
目標對象實現(xiàn)了接口 – 使用CGLIB代理機制
目標對象沒有接口(只有實現(xiàn)類) – 使用CGLIB代理機制
false
目標對象實現(xiàn)了接口 – 使用JDK動態(tài)代理機制(代理所有實現(xiàn)了的接口)
目標對象沒有接口(只有實現(xiàn)類) – 使用CGLIB代理機制
proxyTargetClass | 目標對象特征 | 代理效果 |
---|---|---|
true | 目標對象實現(xiàn)了接口 | 使用CGLIB代理機制 |
true | 目標對象沒有接口(只有實現(xiàn)類) | 使用CGLIB代理機制 |
false | 目標對象實現(xiàn)了接口 | 使用JDK動態(tài)代理機制(代理所有實現(xiàn)了的接口) |
false | 目標對象沒有接口(只有實現(xiàn)類) | 使用CGLIB代理機制 |
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>
注意:proxy-target-class屬性值決定是基于接口的還是基于類的代理被創(chuàng)建。
如果proxy-target-class 屬性值被設(shè)置為true,那么基于類的代理將起作用(這時需要cglib庫)。
如果proxy-target-class 屬值被設(shè)置為false或者這個屬性被省略,那么標準的JDK 基于接口的代理將起作用。
即使你未聲明 proxy-target-class="true" ,但運行類沒有繼承接口,spring也會自動使用CGLIB代理。
高版本spring自動根據(jù)運行類選擇 JDK 或 CGLIB 代理
以上是“基于Spring AOP proxyTargetClass的行為表現(xiàn)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。