Interface SmartDataSource

All Superinterfaces:
All Known Implementing Classes:

public interface SmartDataSource
extends javax.sql.DataSource

Interface to be implemented by classes that can provide a connection to a relational database. Extends the javax.sql.DataSource interface to allow classes using it to query whether or not the connection should be closed after a given operation. This can sometimes be useful for efficiency, if we know that we want to reuse a connection.

$Id:,v 1.1 2003/05/06 12:24:03 jhoeller Exp $
Rod Johnson

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

Method Detail


public boolean shouldClose(java.sql.Connection conn)
Should we close this connection, obtained from this factory? Code that uses connections from the factory should always use code like if (factory.shouldClose(conn)) con.close() in a finally block. However, the JdbcTemplate class in this package should take care of closing JDBC connections, freeing application code of this responsibility.
conn - connection, which should have been obtained from this data source, to check closure status of

Rod Johnson and Spring contributors 2001-2003.