クラス HibernateExceptionTranslator
java.lang.ObjectSE
org.springframework.orm.hibernate5.HibernateExceptionTranslator
- 実装されているすべてのインターフェース:
PersistenceExceptionTranslator
- 既知の直属サブクラス
LocalSessionFactoryBean
public class HibernateExceptionTranslator
extends ObjectSE
implements PersistenceExceptionTranslator
HibernateException インスタンスを Spring の DataAccessException 階層に変換できる PersistenceExceptionTranslator。Spring 4.3.2 および Hibernate 5.2 以降、標準の JPA PersistenceExceptionEE インスタンスも変換します。LocalSessionFactoryBean によって拡張されるため、LocalSessionFactoryBean に加えてこのトランスレータを宣言する必要はありません。
@Configuration クラスでコンテナーを構成する場合、この型の @Bean を手動で登録する必要があります。
コンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected DataAccessException指定された HibernateException をorg.springframework.dao階層からの適切な例外に変換します。voidsetJdbcExceptionTranslator(SQLExceptionTranslator jdbcExceptionTranslator) Hibernate 例外変換の目的で JDBC 例外トランスレーターを設定します。可能であれば、永続フレームワークによってスローされた特定のランタイム例外を、Spring の汎用DataAccessException階層からの対応する例外に変換します。
コンストラクターの詳細
HibernateExceptionTranslator
public HibernateExceptionTranslator()
メソッドの詳細
setJdbcExceptionTranslator
Hibernate 例外変換の目的で JDBC 例外トランスレーターを設定します。Hibernate
JDBCExceptionの検出されたSQLExceptionSE 根本原因に適用され、Hibernate 自身のSQLException変換をオーバーライドします(特定のターゲットデータベースの Hibernate ダイアレクトに基づきます)。translateExceptionIfPossible
インターフェースからコピーされた説明:PersistenceExceptionTranslator可能であれば、永続フレームワークによってスローされた特定のランタイム例外を、Spring の汎用DataAccessException階層からの対応する例外に変換します。このトランスレータが理解できない例外は変換しないでください。たとえば、別の永続化フレームワークが原因である場合や、ユーザーコードが原因である場合や、永続性に関係のない場合などです。
特に重要なのは、制約違反などで、DataIntegrityViolationException に正しく変換することです。実装では、Spring JDBC の高度な例外変換を使用して、根本的な原因として SQLException のイベントに関する詳細情報を提供できます。
- 次で指定:
- インターフェース
PersistenceExceptionTranslatorのtranslateExceptionIfPossible - パラメーター:
ex- 変換する RuntimeException- 戻り値:
- 対応する DataAccessException (または、例外を変換できなかった場合は
null。この場合、実際の永続性の問題ではなく、ユーザーコードが原因である可能性があります。) - 関連事項:
convertHibernateAccessException
指定された HibernateException をorg.springframework.dao階層からの適切な例外に変換します。指定された SQLExceptionTranslator を Hibernate JDBCException に自動的に適用します。それ以外の場合は、Hibernate のデフォルトの変換に依存します。
- パラメーター:
ex- 発生した HibernateException- 戻り値:
- 対応する DataAccessException
- 関連事項: