切面--模塊化--AOP理解

AOP專業術語過於抽象,如下轉爲大白話。
定義:java

  1. 切面(aspect)<--->類,切面是類。
  2. 通知(Advice),目標方法調用先後《時間》範圍要執行方法。
  3. 鏈接點(Join point)能夠說是要調用的方法,若干...。
  4. 切點(Poincut),目標方法調用執行方法。
  5. 引入(Introduction),向現有類添加新方法或屬性。
  6. 織入(Weaving),應用到目標對象並建立新的代理對象的過程,注入鏈接點在目標對象的生命週期中。

通知(Advice)spring

  1. 前置通知(Before),
  2. 後置通知(After),
  3. 返回通知(After-returning),
  4. 異常通知(After-throwing),
  5. 環繞通知(Around)

切面由切點和通知組成。
切面,是一個類,切點,通知等是相對切面定義的,@Aspect註解定義。
切點,調用切面外方法,在目標方法【執行時】觸發調用的指定方法,@Pointcut。
通知,調用切面內方法,在目標方法執行【先後中】【由於XX】觸發調用的指定方法。代理

在spring中,切面也是一個bean,還須要啓動自動代理(織入處理什麼的要用到),javaConfig用@EnableAspectJAutoProxy,
xml用<aop:aspectj-autoproxy />。xml

相關文章
相關標籤/搜索