|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Generic callback interface for code that operates on a PreparedStatement. Allows to execute any number of operations on a single PreparedStatement, for example a single executeUpdate call or repeated executeUpdate calls with varying parameters.
Used internally by JdbcTemplate, but also useful for application code. Note that the passed-in PreparedStatement can have been created by the framework or by a custom PreparedStatementCreator. However, the latter is hardly ever necessary, as most custom callback actions will perform updates in which case a standard PreparedStatement is fine. Custom actions will always set parameter values themselves, so that PreparedStatementCreator capability is not needed either.
JdbcTemplate.execute(String, PreparedStatementCallback)
,
JdbcTemplate.execute(PreparedStatementCreator, PreparedStatementCallback)
Method Summary | |
java.lang.Object |
doInPreparedStatement(java.sql.PreparedStatement ps)
Gets called by JdbcTemplate.execute with an active JDBC PreparedStatement. |
Method Detail |
public java.lang.Object doInPreparedStatement(java.sql.PreparedStatement ps) throws java.sql.SQLException
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.
ps
- active JDBC PreparedStatement
java.sql.SQLException
- in case of errorsJdbcTemplate.queryForObject(String, Object[], Class)
,
JdbcTemplate.queryForList(String, Object[])
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |