public class HibernateExceptionTranslator extends Object implements org.springframework.dao.support.PersistenceExceptionTranslator
PersistenceExceptionTranslator capable of translating HibernateException
instances to Spring's DataAccessException hierarchy. As of Spring 4.3.2 and
Hibernate 5.2, it also converts standard JPA PersistenceException instances.
Extended by LocalSessionFactoryBean, so there is no need to declare this
translator in addition to a LocalSessionFactoryBean.
When configuring the container with @Configuration classes, a @Bean
of this type must be registered manually.
org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor,
SessionFactoryUtils.convertHibernateAccessException(HibernateException),
EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(RuntimeException)| Constructor and Description |
|---|
HibernateExceptionTranslator() |
| Modifier and Type | Method and Description |
|---|---|
protected org.springframework.dao.DataAccessException |
convertHibernateAccessException(HibernateException ex)
Convert the given HibernateException to an appropriate exception from the
org.springframework.dao hierarchy. |
void |
setJdbcExceptionTranslator(org.springframework.jdbc.support.SQLExceptionTranslator jdbcExceptionTranslator)
Set the JDBC exception translator for Hibernate exception translation purposes.
|
org.springframework.dao.DataAccessException |
translateExceptionIfPossible(RuntimeException ex) |
public void setJdbcExceptionTranslator(org.springframework.jdbc.support.SQLExceptionTranslator jdbcExceptionTranslator)
Applied to any detected SQLException root cause of a Hibernate
JDBCException, overriding Hibernate's own SQLException translation
(which is based on a Hibernate Dialect for a specific target database).
SQLException,
JDBCException,
SQLErrorCodeSQLExceptionTranslator,
SQLStateSQLExceptionTranslator@Nullable public org.springframework.dao.DataAccessException translateExceptionIfPossible(RuntimeException ex)
translateExceptionIfPossible in interface org.springframework.dao.support.PersistenceExceptionTranslatorprotected org.springframework.dao.DataAccessException convertHibernateAccessException(HibernateException ex)
org.springframework.dao hierarchy.
Will automatically apply a specified SQLExceptionTranslator to a Hibernate JDBCException, otherwise rely on Hibernate's default translation.
ex - the HibernateException that occurredSessionFactoryUtils.convertHibernateAccessException(org.hibernate.HibernateException)