Package org.springframework.jdbc.support
Class JdbcAccessor
- java.lang.Object
- org.springframework.jdbc.support.JdbcAccessor
- All Implemented Interfaces:
InitializingBean
- Direct Known Subclasses:
JdbcTemplate
public abstract class JdbcAccessor extends Object implements InitializingBean
Base class forJdbcTemplate
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
- See Also:
JdbcTemplate
Constructor Summary
Constructors Constructor Description JdbcAccessor()
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
afterPropertiesSet()
Eagerly initialize the exception translator, if demanded, creating a default one for the specified DataSource if none set.DataSource
getDataSource()
Return the DataSource used by this template.SQLExceptionTranslator
getExceptionTranslator()
Return the exception translator for this instance.boolean
isLazyInit()
Return whether to lazily initialize the SQLExceptionTranslator for this accessor.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 a SQLException.
Constructor Detail
JdbcAccessor
public JdbcAccessor()
Method Detail
setDataSource
public void setDataSource(DataSource dataSource)
Set the JDBC DataSource to obtain connections from.
getDataSource
public DataSource getDataSource()
Return the DataSource used by this template.
setDatabaseProductName
public void setDatabaseProductName(String dbName)
Specify the database product name for the DataSource that this accessor uses. This allows to initialize a 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:
SQLErrorCodeSQLExceptionTranslator.setDatabaseProductName(java.lang.String)
,DatabaseMetaData.getDatabaseProductName()
setExceptionTranslator
public void setExceptionTranslator(SQLExceptionTranslator exceptionTranslator)
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
public SQLExceptionTranslator 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:
getDataSource()
setLazyInit
public void setLazyInit(boolean lazyInit)
Set whether to lazily initialize the SQLExceptionTranslator for this accessor, on first encounter of a SQLException. Default is "true"; can be switched to "false" for initialization on startup.Early initialization just applies if
afterPropertiesSet()
is called.- See Also:
getExceptionTranslator()
,afterPropertiesSet()
isLazyInit
public boolean isLazyInit()
Return whether to lazily initialize the SQLExceptionTranslator for this accessor.- See Also:
getExceptionTranslator()
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