AOP詳解--清楚明白

【版權申明】未經博主同意,謝絕轉載!(請尊重原創,博主保留追究權)
https://blog.csdn.net/javazejian/article/details/56267036
出自【zejian的博客】

https://pan.baidu.com/s/1nOsgH6Zm50e2u5ln_3kAhQ

1.切面
切面包括了 切點和通知兩個部分
切點(pointcut)定義需要應用通知的目標函數,通知則是那些需要應用到目標函數而編寫的函數體,切面(Aspect)則是通知與切點的結合。織入(weaving),將aspect類應用到目標函數(類)的過程
1.1切點
切點由pointcut關鍵字,連接點函數名 和 匹配表達式(包括call關鍵字和要切入的目標方法)組成
pointcut 函數名 : 匹配表達式
pointcut recordLog():call(* HelloWord.sayHello(..));
recordLog連接點函數,HelloWord.sayHello是要切入的函數
*表示任意返回值,接着就是需要攔截的目標函數,sayHello(..)的..,表示任意參數類型
1.2通知

[返回值類型] 通知函數名稱(參數) [returning/throwing 表達式]:連接點函數(切點函數){ 
函數體 
}
 after():recordLog(){
     System.out.println("sayHello方法執行後記錄日誌");
 }

通知裏定義了連接點函數的具體實現,到這裏跟要切入的目標函數就沒有關係了

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