public class PoolingConnection extends DelegatingConnection implements java.sql.Connection, org.apache.commons.pool.KeyedPoolableObjectFactory
DelegatingConnection that pools PreparedStatements.
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| Constructor and Description |
|---|
PoolingConnection(java.sql.Connection c)
Constructor.
|
PoolingConnection(java.sql.Connection c,
org.apache.commons.pool.KeyedObjectPool pool)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
activateObject(java.lang.Object key,
java.lang.Object obj)
My
KeyedPoolableObjectFactory method for activating
PreparedStatements. |
void |
close()
Close and free all
PreparedStatements from my pool, and
close my underlying connection. |
void |
destroyObject(java.lang.Object key,
java.lang.Object obj)
My
KeyedPoolableObjectFactory method for destroying
PreparedStatements. |
java.lang.Object |
makeObject(java.lang.Object obj)
My
KeyedPoolableObjectFactory method for creating
PreparedStatements. |
void |
passivateObject(java.lang.Object key,
java.lang.Object obj)
My
KeyedPoolableObjectFactory method for passivating
PreparedStatements. |
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
PreparedStatements. |
abort, clearWarnings, commit, createArrayOf, createBlob, createClob, createNClob, createSQLXML, createStatement, createStatement, createStatement, createStruct, equals, getAutoCommit, getCatalog, getClientInfo, getClientInfo, getDelegate, getHoldability, getInnermostDelegate, getMetaData, getNetworkTimeout, getSchema, getTransactionIsolation, getTypeMap, getWarnings, hashCode, isClosed, isReadOnly, isValid, isWrapperFor, nativeSQL, prepareCall, prepareCall, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, releaseSavepoint, rollback, rollback, setAutoCommit, setCatalog, setClientInfo, setClientInfo, setDelegate, setHoldability, setNetworkTimeout, setReadOnly, setSavepoint, setSavepoint, setSchema, setTransactionIsolation, setTypeMap, unwrapabort, clearWarnings, commit, createArrayOf, createBlob, createClob, createNClob, createSQLXML, createStatement, createStatement, createStatement, createStruct, getAutoCommit, getCatalog, getClientInfo, getClientInfo, getHoldability, getMetaData, getNetworkTimeout, getSchema, getTransactionIsolation, getTypeMap, getWarnings, isClosed, isReadOnly, isValid, nativeSQL, prepareCall, prepareCall, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, releaseSavepoint, rollback, rollback, setAutoCommit, setCatalog, setClientInfo, setClientInfo, setHoldability, setNetworkTimeout, setReadOnly, setSavepoint, setSavepoint, setSchema, setTransactionIsolation, setTypeMappublic 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.maxSleepingPerKey - the maximum number of PreparedStatements that may sit idle in my pool (per type)public void activateObject(java.lang.Object key,
java.lang.Object obj)
throws java.lang.Exception
KeyedPoolableObjectFactory method for activating
PreparedStatements. (Currently a no-op.)activateObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - ignoredjava.lang.Exceptionpublic void close()
throws java.sql.SQLException
PreparedStatements from my pool, and
close my underlying connection.close in interface java.lang.AutoCloseableclose in interface java.sql.Connectionclose in class DelegatingConnectionjava.sql.SQLExceptionpublic void destroyObject(java.lang.Object key,
java.lang.Object obj)
throws java.lang.Exception
KeyedPoolableObjectFactory method for destroying
PreparedStatements.destroyObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - the PreparedStatement to be destroyed.java.lang.Exceptionpublic java.lang.Object makeObject(java.lang.Object obj)
throws java.lang.Exception
KeyedPoolableObjectFactory method for creating
PreparedStatements.makeObject in interface org.apache.commons.pool.KeyedPoolableObjectFactoryobj - the key for the PreparedStatement to be createdjava.lang.Exceptionpublic void passivateObject(java.lang.Object key,
java.lang.Object obj)
throws java.lang.Exception
KeyedPoolableObjectFactory method for passivating
PreparedStatements. Currently invokes PreparedStatement.clearParameters().passivateObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - a PreparedStatementjava.lang.Exceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql)
throws java.sql.SQLException
PreparedStatement from my pool.prepareStatement in interface java.sql.ConnectionprepareStatement in class DelegatingConnectionPoolablePreparedStatementjava.sql.SQLExceptionpublic 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.ConnectionprepareStatement in class DelegatingConnectionPoolablePreparedStatementjava.sql.SQLExceptionpublic java.lang.String toString()
toString in class java.lang.Objectpublic boolean validateObject(java.lang.Object key,
java.lang.Object obj)
KeyedPoolableObjectFactory method for validating
PreparedStatements.validateObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - ignoredCopyright © 2001-2003 Apache Software Foundation. Documenation generated May 14 2016.