国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

高手為你解讀J2EE開發(fā)過程中的異常處理

2019-11-17 04:36:03
字體:
供稿:網(wǎng)友
 

java里有3種異常類型:

1.檢查型異常,這樣的異常繼承于Excetpion,就是在編譯期間需要檢查,如果該異常被throw,那么在該異常所在的method后必須顯示的throws,調(diào)用該method的地方也必須捕獲該異常,否則編譯器會拋出異常.ejb里的RemoteException是一個這樣的異常.

2.運行時異常,就是在運行期間系統(tǒng)出現(xiàn)的異常,該類異常繼承于RuntimeException,該類異常在編譯時系統(tǒng)不進(jìn)行檢查,如NullPointerExcetpion,NumberFormatException.

3.系統(tǒng)錯誤,一般是JVM出現(xiàn)異常時拋出的異常,如OutofMemoryError,這樣的異常在J2EE開發(fā)中是不用關(guān)心的.

在J2EE開發(fā)中,檢查型異常被濫用以至于過一段時間程序員自己都看不懂拋出這樣的異常,.里面封裝的這些錯誤信息是干什么用的,更可怕的是有好多有用的信息找不到了.比如SQLException和RemoteException這樣的異常我們沒必要再進(jìn)行封裝,這樣的異常只對我們調(diào)試程序有用,而對客戶來說它就是一個”系統(tǒng)錯誤”而已.異常處理有一個簡單的原則,你什么時候需要封裝自己的檢查型異常?就是你很清楚自己拋出這個異常的用途時,比如用戶輸入用戶名和密碼要登錄,但用戶名和密碼不匹配,你就要定義一個檢查型異常,客戶端通過捕獲該異常,然后把相應(yīng)的錯誤信息反饋給客戶.而其它的自己未預(yù)期的錯誤或者異常比如SQLException,只需封裝到EJBException中,ejb container會把它的信息追加到RemoteException里,這樣客戶端捕獲RemoteException后把它寫到系統(tǒng)日志里,就很容易進(jìn)行調(diào)試.

關(guān)于錯誤代碼,一般反饋給客戶的錯誤代碼有兩種類型:

1.應(yīng)用程序級錯誤,這些錯誤是由客戶自身的原因引起的,比如輸入信息有誤,沒有操作該功能的權(quán)限.對于這樣情況,系統(tǒng)應(yīng)給用戶一個明確的提示.

2.系統(tǒng)級異常,比如”未連接到服務(wù)器”,”服務(wù)器忙”,”未連接到數(shù)據(jù)庫”,”系統(tǒng)錯誤”,這樣的錯誤給客戶帶來的后果是不能進(jìn)行操作,那么下面的戲該由系統(tǒng)管理員和系統(tǒng)開發(fā)者去演了.


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 高青县| 凤山县| 桐梓县| 龙游县| 青冈县| 乐清市| 永胜县| 长春市| 南郑县| 灵寿县| 普格县| 赣榆县| 新泰市| 凤凰县| 大理市| 炎陵县| 焦作市| 卢氏县| 乡宁县| 镇坪县| 隆回县| 青冈县| 廊坊市| 光泽县| 虎林市| 千阳县| 鄂尔多斯市| 澜沧| 吉首市| 东方市| 道真| 常熟市| 友谊县| 克山县| 镇赉县| 永善县| 乃东县| 聂拉木县| 政和县| 新建县| 图们市|