Spring的Aop理解
阿新 • • 發佈:2018-01-24
spec gin lan 參考 事務處理 com ref 根據 表達
主要作用:解決代碼復用,避免重復性編寫代碼。
比較典型的場景:日誌打印,權限驗證,事務處理
參考網址為:http://moon-walker.iteye.com/blog/2381532
spring aop相關術語
切面:用於承載 通知+切點的類。把where,when and how(在哪執行,什麽時候執行,執行什麽)執行整合在一起
切點:提取出需要進行統一處理的方法,是連接點的子集。解決where的問題,主要通過切點表達式進行過濾,如典型的配置方式execution(* com.xxx.xxx.*(..))
通知:解決when(什麽時候執行)的問題,根據自己的業務場景選擇使用:
前置通知(before):在目標方法執行前,首先調用該方法
後置通知(after):在目標方法執行完成後,再調用該方法。不管是目標方法執行成功,還是拋出異常,都會調用。
返回通知(afterreturning):在目標方法執行成功後,再調用該方法。
異常通知(afterThrowing):在目標方法執行拋出異常後,調用該方法
環繞通知(around):對目標方法進行包裹,理論上可以在環繞通知裏,實現上述4種通知。
引入
織入
實現方式:
1.基於註解的
2.基於xml配置的
3.註入AspectJ切面
Spring的Aop理解