接口 ConnectionCallback<T>
public interface ConnectionCallback<T>
Generic callback interface for code that operates on a JDBC Connection. Allows to execute any number of operations on a single Connection, using any type and number of Statements.This is particularly useful for delegating to existing data access code that expects a Connection to work on and throws SQLException. For newly written code, it is strongly recommended to use JdbcTemplate's more specific operations, for example a
query
orupdate
variant.
方法概要
所有方法 实例方法 抽象方法 修饰符和类型 方法 说明 T
doInConnection(Connection con)
Gets called byJdbcTemplate.execute
with an active JDBC Connection.
方法详细资料
doInConnection
T doInConnection(Connection con) throws SQLException, DataAccessException
Gets called byJdbcTemplate.execute
with an active JDBC Connection. Does not need to care about activating or closing the Connection, or handling transactions.If called without a thread-bound JDBC transaction (initiated by DataSourceTransactionManager), the code will simply get executed on the JDBC connection with its transactional semantics. If JdbcTemplate is configured to use a JTA-aware DataSource, the JDBC Connection and thus the callback code will be transactional if a JTA transaction is active.
Allows for returning a result object created within the callback, i.e. a domain object or a collection of domain objects. Note that there's special support for single step actions: see
JdbcTemplate.queryForObject
etc. A thrown RuntimeException is treated as application exception: it gets propagated to the caller of the template.- 参数:
con
- active JDBC Connection- 返回:
- a result object, or
null
if none - 抛出:
SQLException
- if thrown by a JDBC method, to be auto-converted to a DataAccessException by a SQLExceptionTranslatorDataAccessException
- in case of custom exceptions- 另请参阅:
JdbcTemplate.queryForObject(String, Class)
,JdbcTemplate.queryForRowSet(String)