public interface SmartDataSource extends DataSource
javax.sql.DataSource
interface, to be
implemented by special DataSources that return JDBC Connections
in an unwrapped fashion.
Classes using this interface can query whether the Connection should be closed after an operation. Spring's DataSourceUtils and JdbcTemplate classes automatically perform such a check.
SingleConnectionDataSource.shouldClose(java.sql.Connection)
,
DataSourceUtils.releaseConnection(java.sql.Connection, javax.sql.DataSource)
,
JdbcTemplate
Modifier and Type | Method and Description |
---|---|
boolean |
shouldClose(Connection con)
Should we close this Connection, obtained from this DataSource?
|
getConnection, getConnection
getLoginTimeout, getLogWriter, getParentLogger, setLoginTimeout, setLogWriter
isWrapperFor, unwrap
boolean shouldClose(Connection con)
Code that uses Connections from a SmartDataSource should always
perform a check via this method before invoking close()
.
Note that the JdbcTemplate class in the 'jdbc.core' package takes care of releasing JDBC Connections, freeing application code of this responsibility.
con
- the Connection to checkConnection.close()