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

SpringBoot中@RestControllerAdvice注解的使用

 更新時(shí)間:2024年01月19日 09:05:03   作者:景慶197  
這篇文章主要介紹了SpringBoot中@RestControllerAdvice注解的使用,@RestControllerAdvice主要用精簡客戶端返回異常,它可以捕獲各種異常,需要的朋友可以參考下

1.主要作用

@RestControllerAdvice主要用精簡客戶端返回異常,它可以捕獲各種異常

2.判斷異常的類型

  • 后端數(shù)據(jù)校驗(yàn)異常
  • 未授權(quán)異常
  • 自定義異常
  • 普通異常

3.實(shí)現(xiàn)

未優(yōu)化前

import com.qing.emos.wx.exception.EmosException;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.authz.UnauthorizedException;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.*;
@Slf4j
//@RestControllerAdvice可以捕獲SpringMVC異常
@RestControllerAdvice
public class ExceptionAdvice {
    @ResponseBody
    @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
//    ExceptionHandler用于全局捕獲異常
    @ExceptionHandler(Exception.class)
    public String validExcepionHandler(Exception e){
        log.error("執(zhí)行異常",e);
//        后端驗(yàn)證失敗的異常,參數(shù)沒傳,或者傳的不對
        if(e instanceof MethodArgumentNotValidException){
            MethodArgumentNotValidException exception = (MethodArgumentNotValidException) e;
            return exception.getBindingResult().getFieldError().getDefaultMessage();
        }
//        精簡異常的內(nèi)容,EmosException為自己定義異常
        else if(e instanceof EmosException){
            EmosException exception = (EmosException) e;
            return  exception.getMsg();
        }
//        未授權(quán)異常
        else if(e instanceof UnauthorizedException){
            return "你不具備相關(guān)權(quán)限";
        }
//       普通異常
        else {
            return "后端執(zhí)行異常";
        }
    }
}

優(yōu)化后

到此這篇關(guān)于SpringBoot中@RestControllerAdvice注解的使用的文章就介紹到這了,更多相關(guān)SpringBoot的@RestControllerAdvice內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • springboot?maven?plugin報(bào)紅的解決辦法

    springboot?maven?plugin報(bào)紅的解決辦法

    本文主要介紹了springboot?maven?plugin報(bào)紅的解決辦法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Java進(jìn)階教程之運(yùn)行時(shí)類型識(shí)別RTTI機(jī)制

    Java進(jìn)階教程之運(yùn)行時(shí)類型識(shí)別RTTI機(jī)制

    這篇文章主要介紹了Java進(jìn)階教程之運(yùn)行時(shí)類型識(shí)別RTTI機(jī)制,在Java運(yùn)行時(shí),RTTI維護(hù)類的相關(guān)信息,比如多態(tài)(polymorphism)就是基于RTTI實(shí)現(xiàn)的,需要的朋友可以參考下
    2014-09-09
  • Java String 拼接字符串原理詳解

    Java String 拼接字符串原理詳解

    在本篇文章里小編給大家分享的是關(guān)于Java String 拼接字符串原理詳解的相關(guān)資源內(nèi)容,有需要的朋友們可以跟著學(xué)習(xí)參考下。
    2020-02-02
  • Mybatis-Plus 通用CRUD的詳細(xì)操作

    Mybatis-Plus 通用CRUD的詳細(xì)操作

    這篇文章主要介紹了Mybatis-Plus 通用CRUD的詳細(xì)操作,包括插入操作,更新操作及刪除操作等,針對每種操作通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2021-09-09
  • Spring中的@ExceptionHandler注解詳解與應(yīng)用示例

    Spring中的@ExceptionHandler注解詳解與應(yīng)用示例

    本文詳細(xì)介紹了Spring框架中的@ExceptionHandler注解的用法,包括基本用法、全局異常處理、結(jié)合@ResponseStatus注解以及返回值類型,通過示例展示了如何使用@ExceptionHandler注解處理不同類型的異常,并提供定制化的異常處理響應(yīng),需要的朋友可以參考下
    2024-11-11
  • Java實(shí)現(xiàn)多文件壓縮加密并重命名壓縮文件對象的方法

    Java實(shí)現(xiàn)多文件壓縮加密并重命名壓縮文件對象的方法

    這篇文章主要介紹了Java實(shí)現(xiàn)多文件壓縮加密并重命名壓縮文件對象的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • 深入探究Java?@MapperScan實(shí)現(xiàn)原理

    深入探究Java?@MapperScan實(shí)現(xiàn)原理

    之前是直接在Mapper類上面添加注解@Mapper,這種方式要求每一個(gè)mapper類都需要添加此注解,麻煩。通過使用@MapperScan可以指定要掃描的Mapper類的包的路徑,這篇文章深入探究Java?@MapperScan的實(shí)現(xiàn)原理
    2023-01-01
  • JAVA的發(fā)展前景如何好不好自學(xué)

    JAVA的發(fā)展前景如何好不好自學(xué)

    這篇文章主要介紹了JAVA的發(fā)展前景如何好不好自學(xué),很多朋友想自學(xué)java不知道好不好學(xué),能不能學(xué)會(huì),今天小編給大家分享一篇教程關(guān)于java的發(fā)展前景的文章,需要的朋友可以參考下
    2020-06-06
  • java對于JSON的解析方法舉例詳解

    java對于JSON的解析方法舉例詳解

    在編寫應(yīng)用時(shí),我們經(jīng)常要解析JSON,下面這篇文章主要給大家介紹了關(guān)于java對于JSON的解析方法,文中通過代碼示例介紹的非常詳細(xì),需要的朋友可以參考下
    2023-09-09
  • 淺談Java 中的引用類型

    淺談Java 中的引用類型

    Java開發(fā)者肯定都很熟悉java中的4種引用類型,它們從強(qiáng)到弱分別是:強(qiáng)引用、軟引用、弱引用和虛引用,下面我們詳細(xì)看看這些引用類型
    2020-02-02

最新評論

六安市| 平远县| 宾阳县| 临高县| 光山县| 定襄县| 中宁县| 湖州市| 喀喇| 澄城县| 六安市| 东乌| 赤水市| 天水市| 江都市| 东源县| 汾阳市| 喀喇| 花莲县| 班戈县| 吉木萨尔县| 元氏县| 宜兰市| 县级市| 高台县| 英超| 东乡族自治县| 沙洋县| 克山县| 固始县| 霞浦县| 庆云县| 黎城县| 仁怀市| 循化| 嘉峪关市| 洛浦县| 张家界市| 曲水县| 澄迈县| 金山区|