org.apache.commons.dbcp
public class PoolingConnection extends DelegatingConnection implements Connection
DelegatingConnection
that pools PreparedStatement
s.
The prepareStatement(java.lang.String)
and prepareCall(java.lang.String)
methods, rather than creating a new PreparedStatement
each time, may actually pull the statement from a pool of unused statements.
The Statement.close()
method of the returned statement doesn't
actually close the statement, but rather returns it to the pool.
(See PoolablePreparedStatement
, PoolableCallableStatement
.)
PoolablePreparedStatement
TRANSACTION_NONE, TRANSACTION_READ_COMMITTED, TRANSACTION_READ_UNCOMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE
Constructor and Description |
---|
PoolingConnection(Connection c)
Constructor.
|
PoolingConnection(Connection c,
KeyedObjectPool pool)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
activateObject(Object key,
Object obj)
KeyedPoolableObjectFactory method for activating
pooled statements. |
void |
close()
Close and free all
PreparedStatement s or CallableStatement from the pool, and
close the underlying connection. |
void |
destroyObject(Object key,
Object obj)
KeyedPoolableObjectFactory method for destroying
PoolablePreparedStatements and PoolableCallableStatements. |
Object |
makeObject(Object obj)
KeyedPoolableObjectFactory method for creating
PoolablePreparedStatement s or PoolableCallableStatement s. |
void |
passivateObject(Object key,
Object obj)
|
CallableStatement |
prepareCall(String sql)
Create or obtain a
CallableStatement from the pool. |
CallableStatement |
prepareCall(String sql,
int resultSetType,
int resultSetConcurrency)
Create or obtain a
CallableStatement from the pool. |
PreparedStatement |
prepareStatement(String sql)
Create or obtain a
PreparedStatement from the pool. |
PreparedStatement |
prepareStatement(String sql,
int resultSetType,
int resultSetConcurrency)
Create or obtain a
PreparedStatement from the pool. |
String |
toString()
Returns a string representation of the metadata associated with
the innnermost delegate connection.
|
boolean |
validateObject(Object key,
Object obj)
KeyedPoolableObjectFactory method for validating
pooled statements. |
clearWarnings, commit, createArrayOf, createBlob, createClob, createNClob, createSQLXML, createStatement, createStatement, createStatement, createStruct, equals, getAutoCommit, getCatalog, getClientInfo, getClientInfo, getDelegate, getHoldability, getInnermostDelegate, getMetaData, getTransactionIsolation, getTypeMap, getWarnings, hashCode, innermostDelegateEquals, isClosed, isReadOnly, isValid, isWrapperFor, nativeSQL, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, releaseSavepoint, rollback, rollback, setAutoCommit, setCatalog, setClientInfo, setClientInfo, setDelegate, setHoldability, setReadOnly, setSavepoint, setSavepoint, setTransactionIsolation, setTypeMap, unwrap
printStackTrace
clearWarnings, commit, createArrayOf, createBlob, createClob, createNClob, createSQLXML, createStatement, createStatement, createStatement, createStruct, getAutoCommit, getCatalog, getClientInfo, getClientInfo, getHoldability, getMetaData, getTransactionIsolation, getTypeMap, getWarnings, isClosed, isReadOnly, isValid, nativeSQL, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, releaseSavepoint, rollback, rollback, setAutoCommit, setCatalog, setClientInfo, setClientInfo, setHoldability, setReadOnly, setSavepoint, setSavepoint, setTransactionIsolation, setTypeMap
isWrapperFor, unwrap
public PoolingConnection(Connection c)
c
- the underlying Connection
.public PoolingConnection(Connection c, KeyedObjectPool pool)
c
- the underlying Connection
.pool
- KeyedObjectPool
of PreparedStatement
s and CallableStatement
s.public void activateObject(Object key, Object obj) throws Exception
KeyedPoolableObjectFactory
method for activating
pooled statements.key
- ignoredobj
- pooled statement to be activatedException
public void close() throws SQLException
PreparedStatement
s or CallableStatement
from the pool, and
close the underlying connection.close
in interface Connection
close
in class DelegatingConnection
SQLException
public void destroyObject(Object key, Object obj) throws Exception
KeyedPoolableObjectFactory
method for destroying
PoolablePreparedStatements and PoolableCallableStatements.
Closes the underlying statement.key
- ignoredobj
- the pooled statement to be destroyed.Exception
public Object makeObject(Object obj) throws Exception
KeyedPoolableObjectFactory
method for creating
PoolablePreparedStatement
s or PoolableCallableStatement
s.
The stmtType
field in the key determines whether
a PoolablePreparedStatement or PoolableCallableStatement is created.obj
- the key for the PreparedStatement
to be createdException
createKey(String, int, int, byte)
public void passivateObject(Object key, Object obj) throws Exception
KeyedPoolableObjectFactory
method for passivating
PreparedStatement
s or CallableStatement
s.
Invokes PreparedStatement.clearParameters()
.key
- ignoredobj
- a PreparedStatement
Exception
public CallableStatement prepareCall(String sql) throws SQLException
CallableStatement
from the pool.prepareCall
in interface Connection
prepareCall
in class DelegatingConnection
sql
- the sql string used to define the CallableStatementPoolableCallableStatement
SQLException
public CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency) throws SQLException
CallableStatement
from the pool.prepareCall
in interface Connection
prepareCall
in class DelegatingConnection
sql
- the sql string used to define the CallableStatementresultSetType
- result set typeresultSetConcurrency
- result set concurrencyPoolableCallableStatement
SQLException
public PreparedStatement prepareStatement(String sql) throws SQLException
PreparedStatement
from the pool.prepareStatement
in interface Connection
prepareStatement
in class DelegatingConnection
sql
- the sql string used to define the PreparedStatementPoolablePreparedStatement
SQLException
public PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency) throws SQLException
PreparedStatement
from the pool.prepareStatement
in interface Connection
prepareStatement
in class DelegatingConnection
sql
- the sql string used to define the PreparedStatementresultSetType
- result set typeresultSetConcurrency
- result set concurrencyPoolablePreparedStatement
SQLException
public String toString()
DelegatingConnection
toString
in class DelegatingConnection
Copyright © 2001-2004 Apache Software Foundation. Documenation generated August 13 2013.