Spring使用@AspectJ開發AOP(註解的方式)
阿新 • • 發佈:2018-12-18
自定義 The @aspectj tro 織入 color span for 開啟
前言:
AOP並不是Spring框架特有的。Spring只是支持AOP編程 (面向切面編程) 的框架之一。
概念:
1、切面(Aspect)
一系列Advice + Pointcut 的集合。
2、通知(Advice)
通知是切面開啟後,切面的方法。
- 前置通知 ( before ):在動態代理反射原有對象方法 或者 執行環繞通知 前 執行的通知功能
- 後置通知(after):在動態代理反射原有對象方法 或者 執行環繞通知 後 執行的通知功能
- 返回通知 (afterReturning):在動態代理反射原有對象方法 或者 執行環繞通知 後 正常返回(無異常)執行的通知功能
- 異常通知(afterTherowing):在動態代理反射原有對象方法 或者 執行環繞通知 產生異常後執行的通知功能
- 環繞通知(around):在動態代理中,它可以取代當前被攔截對象的方法,提供回調原有被攔截對象的方法
3、引入(Introduction)
引入允許我們在現有的類裏添加自定義的類和方法
4、切點(Pointcut)
這是一個告訴Spring AOP 在什麽時候啟動攔截並織入對應的流程,因為並不是所有的開發都是需要啟動AOP的,它往往通過正則表達進行限定
5、連接點( join point)
Pointcut 中的某個具體位置。
Spring使用@AspectJ開發AOP(註解的方式)