卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

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

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

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

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

一種是意料之內(nèi)的,可預(yù)估的。這種異常需要捕獲異常后做出“嘗試修復(fù)”,例如在查詢(xún)用戶(hù)信息rpc的過(guò)程中發(fā)生異常,包括什么500啊,404啊,這些對(duì)于客戶(hù)端來(lái)說(shuō)基本不用重試,可以通過(guò)清晰的錯(cuò)誤碼告知,相反,超時(shí)等情況則可以通知客戶(hù)端稍后重試,通過(guò)不同的錯(cuò)誤碼引導(dǎo)客戶(hù)端進(jìn)行不同的操作。

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

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