spring中面向切面編程(AOP)的個人理解
阿新 • • 發佈:2017-11-28
.com throw logs ima 正則表達式 正則 ring 菜刀 整合
面向切面編程AOP,是spring的一大特點
Aspect切面:封裝共性功能的(增強功能的)類
Advice通過:切面類中封裝的增強功能的方法。
PointCut:切入點,是一個集合的概念,該集合的表達使用一個正則表達式表達
所有核心業務對象的所有方法的前後(事務處理AOP典型的應用)
JoinPoint:連接點,程序中需要加入advice的地方,而且正在執行的ponitCut
織入(Weaving):將aspect和核心業務對象,進行整合的過程。
通過特定接口實現AOp
Aop通知的類型:
Before:前置通知
After:後置通知
Around:環繞通知
Throwing:異常通知
下面具一個生活中常見的例子:切西瓜=面向切面編程AOP
切西瓜先要有一把刀,而這把刀就好比如編寫好需要切入的各種方法
在配置文件中配置好相應的切入點
然後,切下去=執行程序,程序執行的時候菜刀(切面)就成西瓜(對象)的一部分,被一塊執行了。
用最簡單的一句話總結就是,將service層切開兩半,添加日誌和事務提交.
spring中面向切面編程(AOP)的個人理解