亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Springboot全局異常捕獲及try catch區(qū)別解析

 更新時間:2020年06月24日 08:24:22   作者:江湖阿強(qiáng)  
這篇文章主要介紹了Springboot全局異常捕獲及try catch區(qū)別解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

  今天在碼代碼的時候突然想到這個問題,覺得有點困惑。在網(wǎng)上也翻閱不少帖子其中有一個帖子給了我一個思路,其實也是解釋了基礎(chǔ)概念。

概念一:try catch 語句在try里面捕獲到異常之后會進(jìn)入catch子句內(nèi),執(zhí)行catch內(nèi)的代碼。

概念二:springboot中的全局異常處理在捕獲到異常之后,異常代碼之后的語句是不會再運行了的

  那么從我一開始思路理解開始,這個時候我覺得這2個的功能用處都是在代碼出現(xiàn)異常情況的時候?qū)ζ溥M(jìn)行處理,且向調(diào)用者(或者就是用戶)返回一個友好的提示,那這2個有啥區(qū)別呢,重點來了……

  業(yè)務(wù)場景一:某個字段必須保證唯一,例如:不允許存在同一個name的數(shù)據(jù),這是大家開發(fā)過程中很常見的了,調(diào)用新增接口的時候你需要先查一遍該數(shù)據(jù)在庫里是否存在,如果存在就返回“該數(shù)據(jù)已存在”,并且不再執(zhí)行后面的插入動作。到此時我個人覺得try catch 和全局異常處理達(dá)到的效果是一樣的。

  業(yè)務(wù)場景二:某個字段是需要提示用戶“該數(shù)據(jù)已存在”,但是但是但是……我也允許你新增一個同樣的數(shù)據(jù),我就只是單純要提示一下你而已,并不阻止你繼續(xù)插入這條數(shù)據(jù)。這個時候有木有突然覺得就不一樣了,如果是全局異常處理的話,提示你“該數(shù)據(jù)已存在”之后就不運行后面的插入代碼了,而try catch是可以在拋出異常信息“該數(shù)據(jù)已存在”的時候進(jìn)入catch代碼塊執(zhí)行插入操作的。

  就是不要認(rèn)為在有全局異常處理之后,try catch就沒用了。不知道我這樣算不算牽強(qiáng)的解釋

圖一(使用只全局異常的情況下,無法執(zhí)行到else子句內(nèi)的insert操作)

圖二(在拋出異常之后,進(jìn)入catch子句仍然執(zhí)行insert動作)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解hashCode()和equals()的本質(zhì)區(qū)別和聯(lián)系

    詳解hashCode()和equals()的本質(zhì)區(qū)別和聯(lián)系

    這篇文章主要介紹了詳解hashCode()和equals()的本質(zhì)區(qū)別和聯(lián)系,本文先對兩種方法作了介紹,然后對二者聯(lián)系進(jìn)行分析,具有一定參考價值,需要的朋友可以了解下。
    2017-09-09
  • Mybatis-Plus動態(tài)表名的實現(xiàn)示例

    Mybatis-Plus動態(tài)表名的實現(xiàn)示例

    面對復(fù)雜多變的業(yè)務(wù)需求,動態(tài)表名的處理變得愈發(fā)重要,本文主要介紹了Mybatis-Plus動態(tài)表名的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • Spring事務(wù)傳播行為問題解決

    Spring事務(wù)傳播行為問題解決

    這篇文章主要介紹了Spring事務(wù)傳播行為問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • java求解漢諾塔問題示例

    java求解漢諾塔問題示例

    漢諾塔問題的描述如下:有3根柱子A、B和C,在A上從上往下按照從小到大的順序放著一些圓盤,以B為中介,把盤子全部移動到C上。移動過程中,要求任意盤子的下面要么沒有盤子,要么只能有比它大的盤子。編程實現(xiàn)3階漢諾塔的求解步驟
    2014-02-02
  • Java 高并發(fā)八:NIO和AIO詳解

    Java 高并發(fā)八:NIO和AIO詳解

    本文主要介紹Java 高并發(fā)NIO和AIO 的知識,這里整理了詳細(xì)的資料,并詳細(xì)介紹了 1. 什么是NIO 2. Buffer 3. Channel 4. 網(wǎng)絡(luò)編程 5. AIO的知識,有需要的小伙伴可以參考下
    2016-09-09
  • SpringCloud超詳細(xì)講解負(fù)載均衡組件Ribbon源碼

    SpringCloud超詳細(xì)講解負(fù)載均衡組件Ribbon源碼

    在微服務(wù)中,對服務(wù)進(jìn)行拆分之后,必然會帶來微服務(wù)之間的通信需求,而每個微服務(wù)為了保證高可用性,又會去部署集群,那么面對一個集群微服務(wù)進(jìn)行通信的時候,如何進(jìn)行負(fù)載均衡也是必然需要考慮的問題
    2022-07-07
  • springboot啟動時如何指定spring.profiles.active

    springboot啟動時如何指定spring.profiles.active

    這篇文章主要介紹了springboot啟動時如何指定spring.profiles.active問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • 詳解Nacos中注冊中心和配置中心的實現(xiàn)

    詳解Nacos中注冊中心和配置中心的實現(xiàn)

    Spring?Cloud?Alibaba?是阿里巴巴提供的一站式微服務(wù)開發(fā)解決方案。而?Nacos?作為?Spring?Cloud?Alibaba?的核心組件之一,提供了兩個非常重要的功能:注冊中心和配置中心,我們今天來了解和實現(xiàn)一下二者
    2022-08-08
  • Java Vector和ArrayList的異同分析及實例講解

    Java Vector和ArrayList的異同分析及實例講解

    在本篇文章里小編給大家整理的是一篇關(guān)于Java Vector和ArrayList的異同分析及實例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-01-01
  • Java @Value(

    Java @Value("${xxx}")取properties時中文亂碼的解決

    這篇文章主要介紹了Java @Value("${xxx}")取properties時中文亂碼的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07

最新評論