這意味著你在應用程序中不必強行捕獲該異常,可以交由上層處理.如果直接處理SQLException ,我們需要獲得特定數據庫的錯誤代碼,然后判斷該SQLException 的原因,包裝成自定義異常然后交由上層處理.現在,由于Spring 為我們提供了一個與底層數據庫無關的異常體系,因此可以方便地處理各種數據訪問異常.Spring 甚至試圖翻譯各個數據庫廠商的錯誤代碼,然后轉換為DataAccessException 異常體系中的某一個合適的子類.
在應用程序中我們只需要捕獲DataAccessException 即可,由于DataAccessException 是從 NestedRuntimeException 繼承而來的,因此,它完整地保存了原始異常的信息.