インターフェース SQLExceptionTranslator
- すべての既知の実装クラス:
AbstractFallbackSQLExceptionTranslator
、SQLErrorCodeSQLExceptionTranslator
、SQLExceptionSubclassTranslator
、SQLStateSQLExceptionTranslator
- 関数インターフェース:
- これは関数インターフェースであるため、ラムダ式またはメソッド参照の割り当てターゲットとして使用できます。
SQLExceptions
SE と Spring のデータアクセス戦略にとらわれない DataAccessException
階層間の変換のための戦略インターフェース。 実装は汎用的(たとえば、JDBC の SQLState
コードを使用)にすることも、完全に独自仕様(たとえば、Oracle エラーコードを使用)にすることもできます。
- 作成者:
- Rod Johnson, Juergen Hoeller
- 関連事項:
方法の概要
修飾子と型メソッド説明translate
(StringSE task, StringSE sql, SQLExceptionSE ex) 指定されたSQLException
SE を汎用DataAccessException
に変換します。
メソッドの詳細
translate
指定されたSQLException
SE を汎用DataAccessException
に変換します。返された DataAccessException には、根本原因として元の
SQLException
が含まれているはずです。ただし、DataAccessExceptions は他のリソース API が原因である可能性があるため、クライアントコードは通常これに依存しない場合があります。とはいえ、JDBC ベースのアクセスが発生することを予期している場合、getRootCause() instanceof SQLException
チェック(およびその後のキャスト)は信頼できると見なされます。- パラメーター:
task
- 試行されているタスクを説明する読み取り可能なテキストsql
- 問題を引き起こした SQL クエリまたは更新 (既知の場合)ex
- 問題のあるSQLException
- 戻り値:
SQLException
をラップする DataAccessException、または特定の変換を適用できない場合はnull
- 関連事項: