| 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator
public abstract class AbstractFallbackSQLExceptionTranslator
Base class for SQLExceptionTranslator implementations that allow for
 fallback to some other SQLExceptionTranslator.
| Field Summary | |
|---|---|
protected  Log | 
logger
Logger available to subclasses  | 
| Constructor Summary | |
|---|---|
AbstractFallbackSQLExceptionTranslator()
 | 
|
| Method Summary | |
|---|---|
protected  String | 
buildMessage(String task,
             String sql,
             SQLException ex)
Build a message String for the given SQLException. | 
protected abstract  DataAccessException | 
doTranslate(String task,
            String sql,
            SQLException ex)
Template method for actually translating the given exception.  | 
 SQLExceptionTranslator | 
getFallbackTranslator()
Return the fallback exception translator, if any.  | 
 void | 
setFallbackTranslator(SQLExceptionTranslator fallback)
Override the default SQL state fallback translator (typically a SQLStateSQLExceptionTranslator). | 
 DataAccessException | 
translate(String task,
          String sql,
          SQLException ex)
Pre-checks the arguments, calls doTranslate(java.lang.String, java.lang.String, java.sql.SQLException), and invokes the
 fallback translator if necessary. | 
| Methods inherited from class java.lang.Object | 
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Field Detail | 
|---|
protected final Log logger
| Constructor Detail | 
|---|
public AbstractFallbackSQLExceptionTranslator()
| Method Detail | 
|---|
public void setFallbackTranslator(SQLExceptionTranslator fallback)
SQLStateSQLExceptionTranslator).
public SQLExceptionTranslator getFallbackTranslator()
public DataAccessException translate(String task,
                                     String sql,
                                     SQLException ex)
doTranslate(java.lang.String, java.lang.String, java.sql.SQLException), and invokes the
 fallback translator if necessary.
translate in interface SQLExceptionTranslatortask - readable text describing the task being attemptedsql - SQL query or update that caused the problem (may be null)ex - the offending SQLException
SQLExceptionNestedRuntimeException.getRootCause()
protected abstract DataAccessException doTranslate(String task,
                                                   String sql,
                                                   SQLException ex)
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.
task - readable text describing the task being attemptedsql - SQL query or update that caused the problem (may be null)ex - the offending SQLException
SQLException;
 or null if no exception match found
protected String buildMessage(String task,
                              String sql,
                              SQLException ex)
String for the given SQLException.
 To be called by translator subclasses when creating an instance of a generic
 DataAccessException class.
task - readable text describing the task being attemptedsql - the SQL statement that caused the problem (may be null)ex - the offending SQLException
String to use
  | 
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||