spring_aop相關

前記: spring兩個重要概念:ioc(控制反轉), aop(面向切面編程),前兩章講解了ioc的具體概念,本章主要講解aop的操作

目錄

AOP概念

1 面向切面編程,擴展功能不修改源代碼實現

2 AOP採取橫向抽取機制,取代了傳統縱向繼承體系

3 AOP底層使用動態代理實現

1 第一種情況,有接口情況,使用動態代理創建接口實現類代理對象

2 第二種情況,沒有接口情況,使用動態代理創建類的子類代理對象

AOP原理

圖解AOP的原理:

不使用aop的向抽取機制: 

使用aop的橫向抽取機制:

AOP操作術語:

所有術語:

(1) Joinpoint(連接點): 類裏面可以被增強的方法,這些方法稱爲連接點

(2) Pointcut(切入點):所謂切入點是指我們要對哪些Joinpoint進行攔截的定義.

(3) Advice(通知/增強):所謂通知是指攔截到Joinpoint之後所要做的事情就是通知.通知分爲前置通知,後置通知,異常通知,最終通知,環繞通知(切面要完成的功能)

(4) Aspect(切面): 是切入點和通知(引介)的結合

(5) Introduction(引介):引介是一種特殊的通知在不修改類代碼的前提下, Introduction可以在運行期爲類動態地添加一些方法或Field.

(6) Target(目標對象):代理的目標對象(要增強的類)

(7) Weaving(織入):是把增強應用到目標的過程,把advice 應用到 target的過程

(8) Proxy(代理):一個類被AOP織入增強後,就產生一個結果代理類

重點術語:

切入點:在類的裏面可以有很多的方法被增強,比如實際操作中,只是增強了類裏面的add和update方法,實際增強的方法被稱爲切入點

通知/增強:增強的邏輯,稱爲增強,比如擴展日誌的功能,這日誌功能稱之爲增強分類爲:

(1) 前置通知:在方法之前執行

(2) 後置通知:在方法之後執行

(3) 異常通知:方法出現異常

(4) 最終通知:在後置之後執行

(5) 環繞通知:在方法之前和之後執行

切面:


AOP概念

1 面向切面編程,擴展功能不修改源代碼實現

2 AOP採取橫向抽取機制,取代了傳統縱向繼承體系

3 AOP底層使用動態代理實現

1 第一種情況,有接口情況,使用動態代理創建接口實現類代理對象

2 第二種情況,沒有接口情況,使用動態代理創建類的子類代理對象

 

AOP原理

圖解AOP的原理:

不使用aop的向抽取機制: 

使用aop的橫向抽取機制:

AOP操作術語:

所有術語:

(1) Joinpoint(連接點): 類裏面可以被增強的方法,這些方法稱爲連接點

(2) Pointcut(切入點):所謂切入點是指我們要對哪些Joinpoint進行攔截的定義.

(3) Advice(通知/增強):所謂通知是指攔截到Joinpoint之後所要做的事情就是通知.通知分爲前置通知,後置通知,異常通知,最終通知,環繞通知(切面要完成的功能)

(4) Aspect(切面): 是切入點和通知(引介)的結合

(5) Introduction(引介):引介是一種特殊的通知在不修改類代碼的前提下, Introduction可以在運行期爲類動態地添加一些方法或Field.

(6) Target(目標對象):代理的目標對象(要增強的類)

(7) Weaving(織入):是把增強應用到目標的過程,把advice 應用到 target的過程

(8) Proxy(代理):一個類被AOP織入增強後,就產生一個結果代理類

重點術語:

切入點:在類的裏面可以有很多的方法被增強,比如實際操作中,只是增強了類裏面的add和update方法,實際增強的方法被稱爲切入點

通知/增強:增強的邏輯,稱爲增強,比如擴展日誌的功能,這日誌功能稱之爲增強分類爲:

(1) 前置通知:在方法之前執行

(2) 後置通知:在方法之後執行

(3) 異常通知:方法出現異常

(4) 最終通知:在後置之後執行

(5) 環繞通知:在方法之前和之後執行

切面:把增強應用到具體方法上面,過程稱爲切面,即是把增強用到切入點的過程

 

spring的aop操作

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章