91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring Aop執行順序的示例分析

發布時間:2021-06-12 11:25:02 來源:億速云 閱讀:232 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關Spring Aop執行順序的示例分析的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

首先回憶一下 AOP 的常用注解

  • @Before:前置通知:目標方法之前執行

  • @After:后置通知:目標方法之后執行

  • @AfterReturning:返回后通知:執行方法結束前執行

  • @AfterThrowing:異常通知:出現異常時執行

  • @Around:環繞通知:環繞目標方法執行

Spring4 中aop正常順序 + 異常順序

try{
    @Before
    method.invoke(obj, args);
    @AfterReturning
}catch(){
    @AfterThrowing
}finally{
    @After
}

正常執行:@Before(前置通知) ====>@After(后置通知) ====>@AfterReturning(正常返回)
異常執行:@Before(前置通知) ====>@After(后置通知) ====>@AfterThrowing(方法異常)

另外如果還配置有環繞通知,則環繞通知的前置處理先于@Before執行

環繞通知的后置處理也先于@After、@AfterReturning、@AfterThrowing執行

正常結果:

環繞前置處理
@Before前置通知
invokeMethod()
環繞通知后置處理
@After后置通知
@AfterReturning / @AfterThrowing

異常結果:

環繞前置處理
@Before前置通知
@After后置通知
@AfterReturning / @AfterThrowing

Spring5 中aop正常順序 + 異常順序

正常執行:@Before(前置通知) ====>@AfterReturning(正常返回) ====>@After(后置通知)
異常執行:@Before(前置通知) ====>@AfterThrowing(方法異常) ====>@After(后置通知)

加上環繞通知的正常執行結果:

環繞前置處理
@Before前置通知
invokeMethod()
@AfterReturning / @AfterThrowing
@After后置通知
環繞通知后置處理

加上環繞通知的異常執行結果:

環繞前置處理
@Before前置通知
@AfterReturning / @AfterThrowing
@After
```## Spring Aop的執行順序

首先回憶一下 `AOP` 的常用注解

+ @Before:前置通知:目標方法之前執行

+ @After:后置通知:目標方法之后執行
+ @AfterReturning:返回后通知:執行方法結束前執行
+ @AfterThrowing:異常通知:出現異常時執行
+ @Around:環繞通知:環繞目標方法執行

>  Spring4 中aop正常順序 + 異常順序

try{
    @Before
    method.invoke(obj, args);
    @AfterReturning
}catch(){
    @AfterThrowing
}finally{
    @After
}

正常執行:@Before(前置通知) ====>@After(后置通知) ====>@AfterReturning(正常返回)
異常執行:@Before(前置通知) ====>@After(后置通知) ====>@AfterThrowing(方法異常)

另外如果還配置有環繞通知,則環繞通知的前置處理先于@Before執行

環繞通知的后置處理也先于@After、@AfterReturning、@AfterThrowing執行

正常結果:

環繞前置處理
@Before前置通知
invokeMethod()
環繞通知后置處理
@After后置通知
@AfterReturning / @AfterThrowing

異常結果:

環繞前置處理
@Before前置通知
@After后置通知
@AfterReturning / @AfterThrowing

Spring5 中aop正常順序 + 異常順序

正常執行:@Before(前置通知) ====>@AfterReturning(正常返回) ====>@After(后置通知)
異常執行:@Before(前置通知) ====>@AfterThrowing(方法異常) ====>@After(后置通知)

加上環繞通知的正常執行結果:

環繞前置處理
@Before前置通知
invokeMethod()
@AfterReturning / @AfterThrowing
@After后置通知
環繞通知后置處理

加上環繞通知的異常執行結果:

環繞前置處理
@Before前置通知
@AfterReturning / @AfterThrowing
@After

感謝各位的閱讀!關于“Spring Aop執行順序的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张家界市| 武山县| 大化| 瑞丽市| 大方县| 南宫市| 津南区| 宁强县| 丹江口市| 巢湖市| 朝阳市| 桐乡市| 澎湖县| 洪雅县| 固阳县| 石渠县| 泰兴市| 平顶山市| 龙江县| 雅安市| 刚察县| 菏泽市| 定结县| 和林格尔县| 徐水县| 海安县| 新余市| 庄浪县| 镇坪县| 蓝田县| 陕西省| 雷波县| 巩义市| 缙云县| 朔州市| 泊头市| 莫力| 贡嘎县| 郯城县| 昌平区| 肇庆市|