1. 程式人生 > >Spring使用@AspectJ開發AOP(註解的方式)

Spring使用@AspectJ開發AOP(註解的方式)

自定義 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(註解的方式)