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 for this instance.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 the DataSource 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 the DataSource that this accessor uses. This allows to initialize an SQLErrorCodeSQLExceptionTranslator without obtaining a Connection from the DataSource 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.If no custom translator is provided, a default
SQLErrorCodeSQLExceptionTranslator
is used which examines the SQLException's vendor-specific error code. -
getExceptionTranslator
Return the exception translator for this instance.Creates a default
SQLErrorCodeSQLExceptionTranslator
for the specified DataSource if none set, or aSQLStateSQLExceptionTranslator
in case of no DataSource.- See Also:
-
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
-