Spring APO

圖片發(fā)自簡書App

AOP核心概念

Aspect(切面)

Join Point(連接點(diǎn))

Advice(通知/增強(qiáng))

Pointcut(切點(diǎn))

Introduction(引入)

Target Object(目標(biāo)對象)

AOP Proxy(AOP代理)

Weaving(織入)

其中,Advice的主要類型有:

Before Advice(前置通知)

After Returning Advice(返回后通知)

After Throwing Advice(拋出異常后通知)

After (finally)Advice(最后通知)

Around Advice(環(huán)繞通知)

圖片發(fā)自簡書App

Spring APO

圖片發(fā)自簡書App

Hello的前置增強(qiáng)練習(xí)

圖片發(fā)自簡書App

Hello接口和實(shí)現(xiàn)類

圖片發(fā)自簡書App

MyBefore類

圖片發(fā)自簡書App

配置文件

圖片發(fā)自簡書App

應(yīng)用主類

圖片發(fā)自簡書App


運(yùn)行結(jié)果
可以看到:Mybefore的方法被織入到了Hello的調(diào)用方法前面,前置增強(qiáng)生效

實(shí)戰(zhàn):使用@AspectJ注解的例子

“武松打虎”——武松(Fighter)在山里等著老虎(Tiger)出現(xiàn),只要發(fā)現(xiàn)老虎出來,就打老虎。

定義業(yè)務(wù)模型

Tiger類

圖片發(fā)自簡書App

定義切面和配置

前置通知和后置通知

Fighter類

圖片發(fā)自簡書App

配置文件

圖片發(fā)自簡書App

主程序

圖片發(fā)自簡書App

運(yùn)行結(jié)果

運(yùn)行結(jié)果

本文章轉(zhuǎn)載

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容