类 SQLErrorCodeSQLExceptionTranslator

  • 所有已实现的接口:
    SQLExceptionTranslator

    public class SQLErrorCodeSQLExceptionTranslator
    extends AbstractFallbackSQLExceptionTranslator
    Implementation of SQLExceptionTranslator that analyzes vendor-specific error codes. More precise than an implementation based on SQL state, but heavily vendor-specific.

    This class applies the following matching rules:

    • Try custom translation implemented by any subclass. Note that this class is concrete and is typically used itself, in which case this rule doesn't apply.
    • Apply error code matching. Error codes are obtained from the SQLErrorCodesFactory by default. This factory loads a "sql-error-codes.xml" file from the class path, defining error code mappings for database names from database meta-data.
    • Fallback to a fallback translator. SQLStateSQLExceptionTranslator is the default fallback translator, analyzing the exception's SQL state only. On Java 6 which introduces its own SQLException subclass hierarchy, we will use SQLExceptionSubclassTranslator by default, which in turns falls back to Spring's own SQL state translation when not encountering specific subclasses.

    The configuration file named "sql-error-codes.xml" is by default read from this package. It can be overridden through a file of the same name in the root of the class path (e.g. in the "/WEB-INF/classes" directory), as long as the Spring JDBC package is loaded from the same ClassLoader.

    作者:
    Rod Johnson, Thomas Risberg, Juergen Hoeller
    另请参阅:
    SQLErrorCodesFactory, SQLStateSQLExceptionTranslator