org.springframework.jdbc.datasource
Interface SmartDataSource

All Superinterfaces:
DataSource
All Known Implementing Classes:
SingleConnectionDataSource

public interface SmartDataSource
extends DataSource

Subinterface of javax.sql.DataSource, to be implemented by special DataSources that return JDBC Connections in an unwrapped fashion.

Classes using this interface can query whether or not the connection should be closed after an operation. Spring's DataSourceUtils and JdbcTemplate classes automatically perform such a check.

Author:
Rod Johnson
See Also:
SingleConnectionDataSource.shouldClose(java.sql.Connection), DataSourceUtils.releaseConnection(java.sql.Connection, javax.sql.DataSource), JdbcTemplate

Method Summary
 boolean shouldClose(Connection con)
          Should we close this connection, obtained from this DataSource?
 
Methods inherited from interface javax.sql.DataSource
getConnection, getConnection, getLoginTimeout, getLogWriter, setLoginTimeout, setLogWriter
 

Method Detail

shouldClose

boolean shouldClose(Connection con)
Should we close this connection, obtained from this DataSource?

Code that uses connections from a SmartDataSource should always perform a check via this method before invoking close().

However, the JdbcTemplate class in the core package should take care of closing JDBC connections, freeing application code of this responsibility.

Parameters:
con - connection, which should have been obtained from this data source, to check closure status of
Returns:
whether the given connection should be closed


Copyright (c) 2002-2007 The Spring Framework Project.