## Package org.springframework.jdbc.support

Support classes for the JDBC framework, used by the classes in the jdbc.core and jdbc.object packages.

See:
Description

Interface Summary
DatabaseMetaDataCallback: A callback interface used by the JdbcUtils class.
KeyHolder: Interface for retrieving keys, typically used for auto-generated keys as potentially returned by JDBC insert statements.
SQLExceptionTranslator: Strategy interface for translating between `SQLExceptions` and Spring's data access strategy-agnostic `DataAccessException` hierarchy.
SqlValue: Simple interface for complex types to be set as statement parameters.

Class Summary
AbstractFallbackSQLExceptionTranslator: Base class for `SQLExceptionTranslator` implementations that allow for fallback to some other `SQLExceptionTranslator`.
CustomSQLErrorCodesTranslation: JavaBean for holding custom JDBC error codes translation for a particular database.
CustomSQLExceptionTranslatorRegistrar: Registry for registering custom `SQLExceptionTranslator` instances for specific databases.
CustomSQLExceptionTranslatorRegistry: Registry for custom `SQLExceptionTranslator` instances associated with specific databases allowing for overriding translation based on values contained in the configuration file named "sql-error-codes.xml".
DatabaseStartupValidator: Bean that checks if a database has already started up.
GeneratedKeyHolder: Default implementation of the `KeyHolder` interface, to be used for holding auto-generated keys (as potentially returned by JDBC insert statements).
JdbcAccessor: Base class for `JdbcTemplate` and other JDBC-accessing DAO helpers, defining common properties such as DataSource and exception translator.
JdbcUtils: Generic utility methods for working with JDBC.
SQLErrorCodes: JavaBean for holding JDBC error codes for a particular database.
SQLErrorCodesFactory: Factory for creating `SQLErrorCodes` based on the "databaseProductName" taken from the `DatabaseMetaData`.
SQLErrorCodeSQLExceptionTranslator: Implementation of `SQLExceptionTranslator` that analyzes vendor-specific error codes.
SQLExceptionSubclassTranslator: `SQLExceptionTranslator` implementation which analyzes the specific `SQLException` subclass thrown by the JDBC driver.
SQLStateSQLExceptionTranslator: `SQLExceptionTranslator` implementation that analyzes the SQL state in the `SQLException` based on the first two digits (the SQL state "class").

Exception Summary
MetaDataAccessException: Exception indicating that something went wrong during JDBC metadata lookup.

## Package org.springframework.jdbc.support Description

Support classes for the JDBC framework, used by the classes in the jdbc.core and jdbc.object packages. Provides a translator from SQLExceptions Spring's generic DataAccessExceptions.

Can be used independently, for example in custom JDBC access code, or in JDBC-based O/R mapping layers.