|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.commons.dbcp.AbandonedTrace | +--org.apache.commons.dbcp.DelegatingConnection | +--org.apache.commons.dbcp.PoolingConnection
A DelegatingConnection
that pools PreparedStatement
s.
My prepareStatement(java.lang.String)
methods, rather than creating a new PreparedStatement
each time, may actually pull the PreparedStatement
from a pool of unused statements.
The Statement.close()
method of the returned PreparedStatement
doesn't
actually close the statement, but rather returns it to my pool. (See PoolablePreparedStatement
.)
PoolablePreparedStatement
Field Summary | |
protected org.apache.commons.pool.KeyedObjectPool |
_pstmtPool
My pool of PreparedStatement s. |
Fields inherited from class org.apache.commons.dbcp.DelegatingConnection |
_closed, _conn |
Fields inherited from interface java.sql.Connection |
TRANSACTION_NONE, TRANSACTION_READ_COMMITTED, TRANSACTION_READ_UNCOMMITTED, TRANSACTION_REPEATABLE_READ, TRANSACTION_SERIALIZABLE |
Constructor Summary | |
PoolingConnection(java.sql.Connection c)
Constructor. |
|
PoolingConnection(java.sql.Connection c,
org.apache.commons.pool.KeyedObjectPool pool)
Constructor. |
Method Summary | |
void |
activateObject(java.lang.Object key,
java.lang.Object obj)
My KeyedPoolableObjectFactory method for activating
PreparedStatement s. |
void |
close()
Close and free all PreparedStatement s from my pool, and
close my underlying connection. |
protected java.lang.Object |
createKey(java.lang.String sql)
Create a PoolingConnection.PStmtKey for the given arguments. |
protected java.lang.Object |
createKey(java.lang.String sql,
int resultSetType,
int resultSetConcurrency)
Create a PoolingConnection.PStmtKey for the given arguments. |
void |
destroyObject(java.lang.Object key,
java.lang.Object obj)
My KeyedPoolableObjectFactory method for destroying
PreparedStatement s. |
java.lang.Object |
makeObject(java.lang.Object obj)
My KeyedPoolableObjectFactory method for creating
PreparedStatement s. |
protected java.lang.String |
normalizeSQL(java.lang.String sql)
Normalize the given SQL statement, producing a cannonical form that is semantically equivalent to the original. |
void |
passivateObject(java.lang.Object key,
java.lang.Object obj)
My KeyedPoolableObjectFactory method for passivating
PreparedStatement s. |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql)
Create or obtain a PreparedStatement from my pool. |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql,
int resultSetType,
int resultSetConcurrency)
Create or obtain a PreparedStatement from my pool. |
java.lang.String |
toString()
|
boolean |
validateObject(java.lang.Object key,
java.lang.Object obj)
My KeyedPoolableObjectFactory method for validating
PreparedStatement s. |
Methods inherited from class org.apache.commons.dbcp.DelegatingConnection |
activate, checkOpen, clearWarnings, commit, createStatement, createStatement, getAutoCommit, getCatalog, getDelegate, getInnermostDelegate, getMetaData, getTransactionIsolation, getTypeMap, getWarnings, isClosed, isReadOnly, nativeSQL, passivate, prepareCall, prepareCall, rollback, setAutoCommit, setCatalog, setDelegate, setReadOnly, setTransactionIsolation, setTypeMap |
Methods inherited from class org.apache.commons.dbcp.AbandonedTrace |
addTrace, clearTrace, getConfig, getLastUsed, getTrace, printStackTrace, removeTrace, setLastUsed, setLastUsed, setStackTrace |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface java.sql.Connection |
clearWarnings, commit, createStatement, createStatement, createStatement, getAutoCommit, getCatalog, getHoldability, getMetaData, getTransactionIsolation, getTypeMap, getWarnings, isClosed, isReadOnly, nativeSQL, prepareCall, prepareCall, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, releaseSavepoint, rollback, rollback, setAutoCommit, setCatalog, setHoldability, setReadOnly, setSavepoint, setSavepoint, setTransactionIsolation, setTypeMap |
Field Detail |
protected org.apache.commons.pool.KeyedObjectPool _pstmtPool
PreparedStatement
s.
Constructor Detail |
public PoolingConnection(java.sql.Connection c)
c
- the underlying Connection
.public PoolingConnection(java.sql.Connection c, org.apache.commons.pool.KeyedObjectPool pool)
c
- the underlying Connection
.Method Detail |
public void activateObject(java.lang.Object key, java.lang.Object obj)
KeyedPoolableObjectFactory
method for activating
PreparedStatement
s. (Currently a no-op.)
activateObject
in interface org.apache.commons.pool.KeyedPoolableObjectFactory
key
- ignoredobj
- ignoredpublic void close() throws java.sql.SQLException
PreparedStatement
s from my pool, and
close my underlying connection.
close
in interface java.sql.Connection
close
in class DelegatingConnection
java.sql.SQLException
protected java.lang.Object createKey(java.lang.String sql)
PoolingConnection.PStmtKey
for the given arguments.
protected java.lang.Object createKey(java.lang.String sql, int resultSetType, int resultSetConcurrency)
PoolingConnection.PStmtKey
for the given arguments.
public void destroyObject(java.lang.Object key, java.lang.Object obj)
KeyedPoolableObjectFactory
method for destroying
PreparedStatement
s.
destroyObject
in interface org.apache.commons.pool.KeyedPoolableObjectFactory
key
- ignoredobj
- the PreparedStatement
to be destroyed.public java.lang.Object makeObject(java.lang.Object obj)
KeyedPoolableObjectFactory
method for creating
PreparedStatement
s.
makeObject
in interface org.apache.commons.pool.KeyedPoolableObjectFactory
obj
- the key for the PreparedStatement
to be createdprotected java.lang.String normalizeSQL(java.lang.String sql)
public void passivateObject(java.lang.Object key, java.lang.Object obj)
KeyedPoolableObjectFactory
method for passivating
PreparedStatement
s. Currently invokes PreparedStatement.clearParameters()
.
passivateObject
in interface org.apache.commons.pool.KeyedPoolableObjectFactory
key
- ignoredobj
- a PreparedStatement
public java.sql.PreparedStatement prepareStatement(java.lang.String sql) throws java.sql.SQLException
PreparedStatement
from my pool.
prepareStatement
in interface java.sql.Connection
prepareStatement
in class DelegatingConnection
PoolablePreparedStatement
java.sql.SQLException
public java.sql.PreparedStatement prepareStatement(java.lang.String sql, int resultSetType, int resultSetConcurrency) throws java.sql.SQLException
PreparedStatement
from my pool.
prepareStatement
in interface java.sql.Connection
prepareStatement
in class DelegatingConnection
PoolablePreparedStatement
java.sql.SQLException
public java.lang.String toString()
toString
in class java.lang.Object
public boolean validateObject(java.lang.Object key, java.lang.Object obj)
KeyedPoolableObjectFactory
method for validating
PreparedStatement
s.
validateObject
in interface org.apache.commons.pool.KeyedPoolableObjectFactory
key
- ignoredobj
- ignored
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |