Package org.springframework.jdbc.support
Class JdbcAccessor
java.lang.Object
org.springframework.jdbc.support.JdbcAccessor
- All Implemented Interfaces:
InitializingBean
- Direct Known Subclasses:
JdbcTemplate
Base class for
JdbcTemplate
and
other JDBC-accessing DAO helpers, defining common properties such as
DataSource and exception translator.
Not intended to be used directly.
See JdbcTemplate
.
- Since:
- 28.11.2003
- Author:
- Juergen Hoeller, Sebastien Deleuze
- See Also:
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Eagerly initialize the exception translator, if demanded, creating a default one for the specified DataSource if none set.Return the DataSource used by this template.Return the exception translator to use for this instance, creating a default if necessary.boolean
Return whether to lazily initialize the SQLExceptionTranslator for this accessor.protected DataSource
Obtain the DataSource for actual use.void
setDatabaseProductName
(String dbName) Specify the database product name for theDataSource
that this accessor uses.void
setDataSource
(DataSource dataSource) Set the JDBC DataSource to obtain connections from.void
setExceptionTranslator
(SQLExceptionTranslator exceptionTranslator) Set the exception translator for this instance.void
setLazyInit
(boolean lazyInit) Set whether to lazily initialize the SQLExceptionTranslator for this accessor, on first encounter of an SQLException.
-
Field Details
-
logger
Logger available to subclasses.
-
-
Constructor Details
-
JdbcAccessor
public JdbcAccessor()
-
-
Method Details
-
setDataSource
Set the JDBC DataSource to obtain connections from. -
getDataSource
Return the DataSource used by this template. -
obtainDataSource
Obtain the DataSource for actual use.- Returns:
- the DataSource (never
null
) - Throws:
IllegalStateException
- in case of no DataSource set- Since:
- 5.0
-
setDatabaseProductName
Specify the database product name for theDataSource
that this accessor uses. This allows for initializing aSQLErrorCodeSQLExceptionTranslator
without obtaining aConnection
from theDataSource
to get the meta-data.- Parameters:
dbName
- the database product name that identifies the error codes entry- See Also:
-
setExceptionTranslator
Set the exception translator for this instance.A
SQLErrorCodeSQLExceptionTranslator
used by default if a user-provided `sql-error-codes.xml` file has been found in the root of the classpath. Otherwise,SQLExceptionSubclassTranslator
serves as the default translator as of 6.0. -
getExceptionTranslator
Return the exception translator to use for this instance, creating a default if necessary. -
setLazyInit
public void setLazyInit(boolean lazyInit) Set whether to lazily initialize the SQLExceptionTranslator for this accessor, on first encounter of an SQLException. Default is "true"; can be switched to "false" for initialization on startup.Early initialization just applies if
afterPropertiesSet()
is called.- See Also:
-
isLazyInit
public boolean isLazyInit()Return whether to lazily initialize the SQLExceptionTranslator for this accessor.- See Also:
-
afterPropertiesSet
public void afterPropertiesSet()Eagerly initialize the exception translator, if demanded, creating a default one for the specified DataSource if none set.- Specified by:
afterPropertiesSet
in interfaceInitializingBean
-