一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java異常處理攔截器詳情

java異常處理攔截器詳情

2022-02-25 00:48左直拳 Java教程

這篇文章主要介紹了java異常處理攔截器,使用異常處理攔截器,可以不用寫那么多try…catch…,下面就來學習關于java異常處理攔截器的詳情內容吧,需要的朋友可以參考一下

使用異常處理攔截器,可以不用寫那么多try…catch…。

我有個功能,就是前端提交短信內容到后端,后端進行一系列的處理,其中是要將短信內容提交到公共短信接口。微服務框架,公共短信接口是另外一個服務。這樣子就會有一個隱患,假如這個服務不開,或者因為網絡原因無法訪問,怎么辦?

可以原子操作,也可以重新提交啥的,不管怎么搞,錯誤提示是避免不了的。問題是,系統赤裸裸的貼代碼的錯誤提示方式,極不友好。應當捕獲這個錯誤,然后改用較為友好的內容進行提示。

最原始的辦法,可以層層try…catch…,service一直到controller這里返回給前端。但未免太繁瑣,感覺很low。作為程序員,不應當這么機械。

參照網上辦法,在controller這里設置一個異常處理攔截器:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@RestController
@RequestMapping("sms/order")
public class DzSmsSendOrderController {
 
 。。。
 
    @ExceptionHandler(value = {
 RuntimeException.class})
    public ResultBody handleRuntimeException(Exception ex) throws Exception {
 
        if (ex.getMessage().indexOf("project-sms-api") != -1) {
 //鑒別一下是否為目標異常
            return ResultBody.failed().msg("訪問短信接口失敗,請確認相關服務是否已開啟");
        } else throw ex;
    }
}

這個ResultBody是一個自定義的對象,前端根據其返回的編號等判斷是否成功。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
@ApiModel(value = "響應結果")
public class ResultBody<T> implements Serializable {
 
 。。。
 
    public static ResultBody failed() {
 
        return new ResultBody().code(ErrorCode.FAIL.getCode()).msg(ErrorCode.FAIL.getMessage());
    }
    
    @Override
    public String toString() {
 
        return "ResultBody{" +
                "code=" + code +
                ", message='" + message + '\'' +
                ", path='" + path + '\'' +
                ", data=" + data +
                ", httpStatus=" + httpStatus +
                ", extra=" + extra +
                ", timestamp=" + timestamp +
                '}';
    }
}
 
public enum ErrorCode {
 
    OK(0, "success"),
    FAIL(1000, "fail"),
    ALERT(1001, "alert"),
}

前端就根據這個code,來判斷成功與否。

到此這篇關于java異常處理攔截器詳情的文章就介紹到這了,更多相關java異常處理攔截器內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/leftfist/article/details/120888027

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产好深好硬好爽我还要视频 | 欧美日韩在线观看一区二区 | 我把校花黑色蕾丝胸罩脱了 | 男女性潮高片无遮挡禁18 | 无人视频在线观看完整版高清 | 色婷丁香| 无遮18禁在线永久免费观看挡 | 福利视频一区二区思瑞 | ts人妖国产一区 | 国产成人高清亚洲一区91 | 精品国产人成亚洲区 | 好湿好紧好大野战 | 涩涩成人 | 青青草国产精品 | 亚洲欧美专区精品伊人久久 | 99日影院在线播放 | 成人精品亚洲人成在线 | 超兴奋朋友的中文字幕下 | 国产私拍精品88福利视频 | 天堂一区二区在线观看 | 成人特级毛片69免费观看 | 精品亚洲视频在线 | 久久亚洲精选 | 国产精品成人扳一级aa毛片 | 皇上好大好硬好涨好深好爽 | 精品四虎国产在免费观看 | 亚洲国产精品一区二区三区久久 | 性欧美4khdxxxx| 99热这里只有精品在线观看 | 非洲黑人又大粗gay 非洲黑人bbwbbwbbw | 日韩人成免费网站大片 | 美女视频久久 | 外国a级片| 四虎在线精品观看免费 | 成人au免费视频影院 | 王小军怎么了最新消息 | 国产成人精品三级在线 | 深夜影院深a久久 | 久久精品视频91 | tube日本高清老少配 | 男人与雌性宠物交啪啪小说 |