spring 2 0 aop程式設計 一

2021-08-22 18:35:44 字數 1677 閱讀 7145

在spring2.0中,aop發生了很大的變化:

主要分為兩大方面

1.支援簡單的aop xml配置

2.支援@aspectj的注釋

先來看一看第一種情況:

申明乙個aspect,在xml中的申明如下:

...

...

申明pointcut

申明advice

before advice

pointcut-ref="dataaccessoperation"

method="doaccesscheck"/>

after returning advice:

pointcut-ref="dataaccessoperation"

method="doaccesscheck"/>

...

或者帶有返回引數

pointcut-ref="dataaccessoperation"

returning="retval"

method="doaccesscheck"/>

...

after throwing advice

pointcut-ref="dataaccessoperation"

method="dorecoveryactions"/>

...

或者帶有throwing

pointcut-ref="dataaccessoperation"

throwing="dataacces***"

method="dorecoveryactions"/>

...

after (finally) advice

pointcut-ref="dataaccessoperation"

method="doreleaselock"/>

...

around advice

pointcut-ref="businessservice"

method="dobasicprofiling"/>

...

advice parameters

pointcut="pointcuts.anypublicmethod() and @annotation(auditable)"

method="audit"

arg-names="auditable"

/>

對於引入介面(introductions

): implement-inte***ce="usagetracked"

default-impl=" service.tracking.defaultusagetracked"/>

and this(usagetracked)"

method="recordusage"/>

Spring面向切面程式設計AOP

感謝zejian 大佬的分享 關於 spring aop aspectj 你該知曉的一切 大佬的分享讓我受益匪淺!首先學習aop前,弄清楚為什麼要使用aop?舉個栗子有助於理解 乙個支付轉賬的小栗子 我們每次使用手機支付時,不管轉賬還是支付都需要驗證支付資訊密碼。這時aop的好處就體現出來了,我們可...

Spring基礎 AOP程式設計 2

size x large b 基於proxyfactory的aop程式設計 b size spring只支援方法連線點,包括了5種型別的增強。list 前置增強 後置增強 環繞增強 異常丟擲增強 引介增強 list 1.前置異常 這裡使用乙個服務員作為例子,服務員向顧客打招呼,並且提供服務。首先我們...

Spring 切面程式設計AOP註解

aop aspect oriented programming 切面程式設計通過預編譯方式和執行期動態 實現程式功能的統一維護的一種技術,是spring框架中乙個重點內容也是函式式程式設計的一種衍生范型。在spring中使用aop的業務只需要關注自己業務本身,將日誌記錄 效能統計 安全控制 事務處理...