国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java為什么要拋出異常 java異常從業(yè)務層集中拋出,是不是每個控制層方法都要trycatch?

java異常從業(yè)務層集中拋出,是不是每個控制層方法都要trycatch?控制層中發(fā)生的異常有兩種情況:一種是意料之內的,可預估的。這種異常需要捕獲異常后做出“嘗試修復”,例如在查詢用戶信息rpc的過程

java異常從業(yè)務層集中拋出,是不是每個控制層方法都要trycatch?

控制層中發(fā)生的異常有兩種情況:

一種是意料之內的,可預估的。這種異常需要捕獲異常后做出“嘗試修復”,例如在查詢用戶信息rpc的過程中發(fā)生異常,包括什么500啊,404啊,這些對于客戶端來說基本不用重試,可以通過清晰的錯誤碼告知,相反,超時等情況則可以通知客戶端稍后重試,通過不同的錯誤碼引導客戶端進行不同的操作。

另一種情況則是控制層本身就沒考慮到的情況。這種情況盲目的try/catch沒多大意義,通常會在框架層面做統(tǒng)一處理,包括記錄異常信息,以及優(yōu)雅的返回失敗。

最后,對于try/catch的使用,我們不是并不是為了看不見異常,更多的是考慮我捕獲后能做什么,能否嘗試解決這個問題,如果不行,拋給上層,能否記錄并告警,如果沒考慮清楚這個問題,很容易犯一個大忌(吞掉異常)。