java 错误 代码_Java错误代码及异常处理
現(xiàn)在有個項目,遇到錯誤代碼和異常處理方面的問題,請教各位高手。
背景:項目對外提供服務,這些服務是對很多外部系統(tǒng)提供服務的封裝,每個外部系統(tǒng)有自己的錯誤代碼,沒有統(tǒng)一的規(guī)范。有些外部系統(tǒng)自己規(guī)范都不統(tǒng)一,有的時候返回錯誤代碼,有的時候返回錯誤信息,有的時候錯誤代碼和錯誤信息在一起。
目前可選的解決方案:
一、直接使用外系統(tǒng)錯誤代碼
方法:直接使用外系統(tǒng)錯誤代碼
問題:混亂,錯誤代碼可能重復,排除該方法
二、使用統(tǒng)一的錯誤代碼
方法:對外部系統(tǒng)的錯誤代碼重新編排,按照模塊進行分類,沒有錯誤代碼的錯誤當做未知錯誤。
問題:需要維護一個錯誤代碼列表及映射關系,對于外部系統(tǒng)錯誤不規(guī)范的情況,需要有專門的代碼進行處理
三、使用異常,統(tǒng)一當做checked exception處理
方法:繼承Exception
問題:不符合異常處理最佳實踐,有些應該是RuntimeException的也被強制要求捕獲了
四、使用異常,根據(jù)外系統(tǒng)錯誤類型區(qū)分是checked exception還是unchecked exception
方法:根據(jù)外部系統(tǒng)類型,區(qū)分哪些是程序邏輯問題(繼承RuntimeException),哪些是系統(tǒng)問題(繼承Exception),映射成不同的異常類型
問題:外系統(tǒng)錯誤說明可能有誤,導致映射到異常時類型不準確
針對這種情況,各位覺得應該使用哪種方式處理比較好,另外,對于異常的類層次結構實踐經(jīng)驗不多,只是簡單看過Spring的異常類設計,有哪些好的書或資料可以學習一下。
總結
以上是生活随笔為你收集整理的java 错误 代码_Java错误代码及异常处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求Sn = a+aa+aaa+...+a
- 下一篇: java map清除值为null的元素_