Package org.springframework.jdbc.support
Class SQLStateSQLExceptionTranslator
- java.lang.Object
- org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator
- org.springframework.jdbc.support.SQLStateSQLExceptionTranslator
- All Implemented Interfaces:
SQLExceptionTranslator
public class SQLStateSQLExceptionTranslator extends AbstractFallbackSQLExceptionTranslator
SQLExceptionTranslator
implementation that analyzes the SQL state in theSQLException
based on the first two digits (the SQL state "class"). Detects standard SQL state values and well-known vendor-specific SQL states.Not able to diagnose all problems, but is portable between databases and does not require special initialization (no database vendor detection, etc.). For more precise translation, consider
SQLErrorCodeSQLExceptionTranslator
.- Author:
- Rod Johnson, Juergen Hoeller, Thomas Risberg
- See Also:
SQLException.getSQLState()
,SQLErrorCodeSQLExceptionTranslator
Field Summary
Fields inherited from class org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator
logger
Constructor Summary
Constructors Constructor Description SQLStateSQLExceptionTranslator()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DataAccessException
doTranslate(String task, String sql, SQLException ex)
Template method for actually translating the given exception.Methods inherited from class org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator
buildMessage, getFallbackTranslator, setFallbackTranslator, translate
Constructor Detail
SQLStateSQLExceptionTranslator
public SQLStateSQLExceptionTranslator()
Method Detail
doTranslate
protected DataAccessException doTranslate(String task, String sql, SQLException ex)
Description copied from class:AbstractFallbackSQLExceptionTranslator
Template method for actually translating the given exception.The passed-in arguments will have been pre-checked. Furthermore, this method is allowed to return
null
to indicate that no exception match has been found and that fallback translation should kick in.- Specified by:
doTranslate
in classAbstractFallbackSQLExceptionTranslator
- Parameters:
task
- readable text describing the task being attemptedsql
- the SQL query or update that caused the problem (if known)ex
- the offendingSQLException
- Returns:
- the DataAccessException, wrapping the
SQLException
; ornull
if no exception match found