欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解如何在spring中創(chuàng)建全局異常處理器

 更新時(shí)間:2024年06月13日 11:39:47   作者:21光年  
全局異常處理器在實(shí)際項(xiàng)目開發(fā)中是一個(gè)很重要的工具,對保證代碼的正常運(yùn)行有很重要的作用,所以下面來講一下如何在spring中創(chuàng)建一個(gè)全局異常處理器,感興趣的的朋友可以參考下

全局異常處理器在實(shí)際項(xiàng)目開發(fā)中是一個(gè)很重要的工具;對保證代碼的正常運(yùn)行有很重要的作用。當(dāng)然這樣也可以使得用戶體驗(yàn)更好,總不可能讓用戶看到我們后端密密麻麻的報(bào)錯(cuò)信息吧。

下面來講一下如何創(chuàng)建一個(gè)全局異常處理器:

1.創(chuàng)建一個(gè)全局異常處理類:并添加@RestControllerAdvice注解

2.在類中創(chuàng)建方法用于捕獲異常:在方法上添加注解:@ExceptionHandler

方法中的形參就是異常的類型。

下面是對注解的簡單介紹以及完整的代碼:

@RestControllerAdvice:

該注解 由@ControllerAdvice、@ResponseBody組成

而@ControllerAdvice繼承了@Component

@RestControllerAdvice本質(zhì)上是個(gè)Component

@ExceptionHandler:用于指定異常處理方法。當(dāng)與@RestControllerAdvice配合使用時(shí),用于全局處理控制器里的異常。

import com.sky.exception.BaseException;
import com.sky.result.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;
 
/**
 * 全局異常處理器,處理項(xiàng)目中拋出的業(yè)務(wù)異常
 */
@RestControllerAdvice
@Slf4j
public class GlobalExceptionHandler {
 
    /**
     * 捕獲業(yè)務(wù)異常
     * @param ex
     * @return
     */
    @ExceptionHandler
    public Result exceptionHandler(BaseException ex){
        log.error("異常信息:{}", ex.getMessage());
        return Result.error(ex.getMessage());
    }
 
}

這樣當(dāng)代碼運(yùn)行出現(xiàn)對應(yīng)的異常的時(shí)候,就會被捕獲,并且執(zhí)行方法中的代碼。

到此這篇關(guān)于詳解如何在spring中創(chuàng)建全局異常處理器的文章就介紹到這了,更多相關(guān)spring創(chuàng)建全局異常處理器內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java中靜態(tài)代碼塊與構(gòu)造方法的執(zhí)行順序判斷

    java中靜態(tài)代碼塊與構(gòu)造方法的執(zhí)行順序判斷

    對靜態(tài)代碼塊以及構(gòu)造函數(shù)的執(zhí)行先后順序,一直很迷惑,直到最近看到一段代碼,發(fā)現(xiàn)終于弄懂了,所以這篇文章主要給大家介紹了關(guān)于如何判斷java中靜態(tài)代碼塊與構(gòu)造方法的執(zhí)行順序的相關(guān)資料,需要的朋友可以參考下。
    2017-12-12
  • java字符串中常用的十個(gè)方法總結(jié)

    java字符串中常用的十個(gè)方法總結(jié)

    String類中提供了豐富的用于操作字符串的方法,下面這篇文章主要給大家介紹了關(guān)于java字符串中常用的十個(gè)方法,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • 基于Java的MathML轉(zhuǎn)圖片的方法(示例代碼)

    基于Java的MathML轉(zhuǎn)圖片的方法(示例代碼)

    最近接到一個(gè)新需求mathML轉(zhuǎn)圖片怎么實(shí)現(xiàn)呢?剛開始還真是蒙圈了,不知道怎么實(shí)現(xiàn),今天小編記錄一種基于Java的MathML轉(zhuǎn)圖片的方法,感興趣的朋友一起看看吧
    2021-06-06
  • Java中隊(duì)列Queue和Deque的區(qū)別與代碼實(shí)例

    Java中隊(duì)列Queue和Deque的區(qū)別與代碼實(shí)例

    學(xué)過數(shù)據(jù)結(jié)構(gòu)的,一定對隊(duì)列不陌生,java也實(shí)現(xiàn)了隊(duì)列,下面這篇文章主要給大家介紹了關(guān)于Java中隊(duì)列Queue和Deque區(qū)別的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • SpringBoot中的server.context-path的實(shí)現(xiàn)

    SpringBoot中的server.context-path的實(shí)現(xiàn)

    本文主要介紹了SpringBoot中的server.context-path的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • 詳解Java實(shí)現(xiàn)設(shè)計(jì)模式之責(zé)任鏈模式

    詳解Java實(shí)現(xiàn)設(shè)計(jì)模式之責(zé)任鏈模式

    責(zé)任鏈模式是一種行為設(shè)計(jì)模式,允許你將請求沿著處理鏈發(fā)送,然后處理者都可對其進(jìn)行處理,完成后可以再將其傳遞給下一個(gè)處理者。下面將會舉例說明什么是責(zé)任鏈模式,責(zé)任鏈模式該如何使用
    2021-06-06
  • Java Lambda表達(dá)式之從集合到流

    Java Lambda表達(dá)式之從集合到流

    這篇文章主要介紹了Java Lambda表達(dá)式之從集合到流知識,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-02-02
  • 關(guān)于@Value注解失效的原因分析

    關(guān)于@Value注解失效的原因分析

    這篇文章主要介紹了關(guān)于@Value注解失效的原因分析,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • java跳出for循環(huán)的三種常見方法

    java跳出for循環(huán)的三種常見方法

    這篇文章主要給大家介紹了關(guān)于java跳出for循環(huán)的三種常見方法,需要的朋友可以參考下
    2023-07-07
  • java面試try-with-resources問題解答

    java面試try-with-resources問題解答

    這篇文章主要介紹了java面試try-with-resources問題解答,?這個(gè)語句的作用是,確保該語句執(zhí)行之后,關(guān)閉每一個(gè)資源,也就是說它確保了每個(gè)資源都在生命周期結(jié)束之后被關(guān)閉
    2022-07-07

最新評論