教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Spring AOP實現(xiàn)原理和常見代理的區(qū)別

更新時間:2020年11月18日16時12分 來源:傳智播客 瀏覽次數(shù):

Spring AOP的面向切面編程,是面向?qū)ο缶幊痰囊环N補充,用于處理系統(tǒng)中分布的各個模塊的橫切關注點,比如說事務管理、日志、緩存等。它是使用動態(tài)代理實現(xiàn)的,在內(nèi)存中臨時為方法生成一個AOP對象,這個對象包含目標對象的所有方法,在特定的切點做了增強處理,并回調(diào)原來的方法。

Spring AOP的動態(tài)代理主要有兩種方式實現(xiàn),JDK動態(tài)代理和cglib動態(tài)代理。JDK動態(tài)代理通過反射來接收被代理的類,但是被代理的類必須實現(xiàn)接口,核心是InvocationHandler和Proxy類。cglib動態(tài)代理的類一般是沒有實現(xiàn)接口的類,cglib是一個代碼生成的類庫,可以在運行時動態(tài)生成某個類的子類,所以,CGLIB是通過繼承的方式做的動態(tài)代理,因此如果某個類被標記為final,那么它是無法使用CGLIB做動態(tài)代理的。


猜你喜歡:

Spring Boot如何實現(xiàn)微服務?

Spring Cloud是什么?怎么理解Spring Cloud?

怎么配置Spring容器中的Bean?

Spring Boot框架和傳統(tǒng)Spring框架相比有哪些優(yōu)勢?

傳智播客Java培訓課程





下面是傳智教育公開的幾套Java課程,您可以下載和在線觀看學習,如果想深入學習java并想找到不錯的java開發(fā)相關工作,建議報班學習傳智教育Java高級軟件工程師課程獲取【Java視頻教程+資料】加播妞1605146928606_課程資料.jpg:435946716。



0 分享到:
和我們在線交談!