專案結構分層,各層的對異常的處理

2021-10-11 08:42:17 字數 489 閱讀 1736

在 dao 層,產生的異常型別有很多,無法用細粒度的異常進行 catch,使用 catch(exception e)方式,並 throw new daoexception(e),不需要列印日誌,因為日誌在 manager/service 層一定需要捕獲並列印到日誌檔案中去,如果同台伺服器再打日誌,浪費效能和儲存。

在 service 層出現異常時,必須記錄出錯日誌到磁碟,盡可能帶上引數資訊,相當於保護案發現場。

manager 層與 service 同機部署,日誌方式與 dao 層處理一致,如果是單獨部署,則採用與 service 一致的處理方式。

web 層絕不應該繼續往上拋異常,因為已經處於頂層,如果意識到這個異常將導致頁面無法正常渲染,那麼就應該直接跳轉到友好錯誤頁面,盡量加上友好的錯誤提示資訊。

開放介面層要將異常處理成錯誤碼和錯誤資訊方式返回。

IFDS的icfg對異常的處理

ifds的icfg對異常的處理 異常產生的target語句 1.如果產生異常的語句在try catch中,則target就是catch塊的第一條語句 r8 caughtexception 2.如果不在try catch中 當前方法宣告為throws exception 則target就是return...

系統對異常的處理使用統一的異常處理流程

系統對異常的處理使用統一的異常處理流程。1 自定義異常型別。2 自定義錯誤 及錯誤資訊。3 對於可預知的異常由程式設計師在 中主動拋出自定義異常型別的異常,丟擲異常時需要指定錯誤 4 對於不可預知的異常 執行時異常 由springmvc統一捕獲exception型別的異常,由統一的異常捕獲類來解析 ...

springboot專案中的異常處理

1.首先自定義異常類繼承runtimeexception類,以notfoundexception為例 使用messageformat.format 方法做資訊和可變參的處理。public class notfoundexception extends runtimeexception 2.定義全域性...