當(dāng)前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
Spring AOP底层实现原理
生活随笔
收集整理的這篇文章主要介紹了
Spring AOP底层实现原理
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、spring的AOP底層是由 JDK提供的動態(tài)代理技術(shù) 和 CGLIB(動態(tài)字節(jié)碼增強(qiáng)技術(shù))實(shí)現(xiàn)。
2、JDK動態(tài)代理:Jdk動態(tài)代理只針對于接口操作。
3、CGLIB:可以針對沒有接口的java類和有接口的java類。
java的jdk動態(tài)代理:
1、new的java類必須存在接口,通過一個(gè)工具類,對java類中的一些方法進(jìn)行功能補(bǔ)充。或者說將一些公共的方法提取寫在工具類中。
2、代碼實(shí)現(xiàn):
目標(biāo)類target
代理工具類
測試代碼
cglib動態(tài)代理
1、CGLIB(Code Generation Library)是一個(gè)開源項(xiàng)目,cglib它可以為沒有實(shí)現(xiàn)接口的類做代理,也可以為接口類做代理.
2、代碼:setCallback傳遞的參數(shù)是Callback類型,我們使用的是MethodInterceptor。
測試代碼
總結(jié)
以上是生活随笔為你收集整理的Spring AOP底层实现原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AOP面向切面编程相关术语介绍
- 下一篇: SpringAOP编程-传统基于JDK代