最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

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

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

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

概念二:springboot中的全局異常處理在捕獲到異常之后,異常代碼之后的語(yǔ)句是不會(huì)再運(yùn)行了的

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

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

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

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

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

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

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

相關(guān)文章

  • Java的Hibernate框架中Criteria查詢使用的實(shí)例講解

    Java的Hibernate框架中Criteria查詢使用的實(shí)例講解

    這篇文章主要介紹了Java的Hibernate框架中Criteria查詢使用的實(shí)例講解,Hibernate是Java的SSH三大web開(kāi)發(fā)框架之一,需要的朋友可以參考下
    2016-01-01
  • Springmvc返回html頁(yè)面問(wèn)題如何解決

    Springmvc返回html頁(yè)面問(wèn)題如何解決

    這篇文章主要介紹了Springmvc返回html頁(yè)面問(wèn)題如何解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Java SpringBoot集成ChatGPT實(shí)現(xiàn)AI聊天

    Java SpringBoot集成ChatGPT實(shí)現(xiàn)AI聊天

    ChatGPT已經(jīng)組件放開(kāi)了,現(xiàn)在都可以基于它寫(xiě)插件了,也許可以用它結(jié)合文字語(yǔ)音開(kāi)發(fā)一個(gè)老人小孩需要的智能的說(shuō)話陪伴啥的,這篇文章就介紹SpringBoot結(jié)合ChatGPT實(shí)現(xiàn)AI聊天感興趣的同學(xué)可以借鑒一下
    2023-04-04
  • JAVA定義變量與輸出詳解

    JAVA定義變量與輸出詳解

    這篇文章主要介紹了JAVA定義變量與輸出詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Java線程池由淺入深掌握到精通

    Java線程池由淺入深掌握到精通

    什么是線程池?很簡(jiǎn)單,簡(jiǎn)單看名字就知道是裝有線程的池子,我們可以把要執(zhí)行的多線程交給線程池來(lái)處理,和連接池的概念一樣,通過(guò)維護(hù)一定數(shù)量的線程池來(lái)達(dá)到多個(gè)線程的復(fù)用
    2021-09-09
  • SpringBoot 使用 OpenAPI3 規(guī)范整合 knife4j的詳細(xì)過(guò)程

    SpringBoot 使用 OpenAPI3 規(guī)范整合 knife4j的詳細(xì)過(guò)程

    Swagger工具集使用OpenAPI規(guī)范,可以生成、展示和測(cè)試基于OpenAPI規(guī)范的API文檔,并提供了生成客戶端代碼的功能,本文給大家介紹SpringBoot使用OpenAPI3規(guī)范整合knife4j的詳細(xì)過(guò)程,感興趣的朋友跟隨小編一起看看吧
    2023-12-12
  • Java實(shí)現(xiàn)多層文件夾壓縮功能

    Java實(shí)現(xiàn)多層文件夾壓縮功能

    這篇文章主要為大家詳細(xì)介紹了如何利用Java語(yǔ)言進(jìn)行多層文件夾壓縮功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-08-08
  • 解決java后臺(tái)登錄前后cookie不一致問(wèn)題

    解決java后臺(tái)登錄前后cookie不一致問(wèn)題

    本文主要介紹了java后臺(tái)登錄前后cookie不一致的解決方案,具有很好的參考價(jià)值,需要的朋友一起來(lái)看下吧
    2016-12-12
  • Spring異常捕獲且回滾事務(wù)解決方案

    Spring異常捕獲且回滾事務(wù)解決方案

    這篇文章主要介紹了Spring異常捕獲且回滾事務(wù)解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Springmvc完成ajax功能實(shí)例詳解

    Springmvc完成ajax功能實(shí)例詳解

    在本篇文章里小編給大家整理了關(guān)于Springmvc完成ajax功能實(shí)例內(nèi)容,有需要的朋友們可以參考學(xué)習(xí)下。
    2019-09-09

最新評(píng)論

巫山县| 定襄县| 夏津县| 天镇县| 衡阳市| 阳朔县| 罗江县| 隆尧县| 伊春市| 金山区| 天长市| 永城市| 龙州县| 始兴县| 乐山市| 广元市| 象州县| 上高县| 崇义县| 镶黄旗| 黄骅市| 汉阴县| 永登县| 凤庆县| 利津县| 繁昌县| 陈巴尔虎旗| 资溪县| 武乡县| 彝良县| 固镇县| 博乐市| 永顺县| 本溪市| 芦山县| 望江县| 永登县| 上虞市| 新河县| 鄢陵县| 安顺市|