java.lang.AutoCloseable, java.sql.Connection, java.sql.Wrapper, org.apache.commons.pool.KeyedPoolableObjectFactorypublic class PoolingConnection extends DelegatingConnection implements java.sql.Connection, org.apache.commons.pool.KeyedPoolableObjectFactory
DelegatingConnection that pools PreparedStatements.
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| Constructor | Description |
|---|---|
PoolingConnection(java.sql.Connection c) |
Constructor.
|
PoolingConnection(java.sql.Connection c,
org.apache.commons.pool.KeyedObjectPool pool) |
Constructor.
|
| Modifier and Type | Method | Description |
|---|---|---|
void |
abort(java.util.concurrent.Executor executor) |
|
void |
activateObject(java.lang.Object key,
java.lang.Object obj) |
KeyedPoolableObjectFactory method for activating
pooled statements. |
void |
close() |
Close and free all
PreparedStatements or CallableStatement from the pool, and
close the underlying connection. |
void |
destroyObject(java.lang.Object key,
java.lang.Object obj) |
KeyedPoolableObjectFactory method for destroying
PoolablePreparedStatements and PoolableCallableStatements. |
int |
getNetworkTimeout() |
|
java.lang.String |
getSchema() |
|
java.lang.Object |
makeObject(java.lang.Object obj) |
KeyedPoolableObjectFactory method for creating
PoolablePreparedStatements or PoolableCallableStatements. |
void |
passivateObject(java.lang.Object key,
java.lang.Object obj) |
KeyedPoolableObjectFactory method for passivating
PreparedStatements or CallableStatements. |
java.sql.CallableStatement |
prepareCall(java.lang.String sql) |
Create or obtain a
CallableStatement from the pool. |
java.sql.CallableStatement |
prepareCall(java.lang.String sql,
int resultSetType,
int resultSetConcurrency) |
Create or obtain a
CallableStatement from the pool. |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql) |
Create or obtain a
PreparedStatement from the pool. |
java.sql.PreparedStatement |
prepareStatement(java.lang.String sql,
int resultSetType,
int resultSetConcurrency) |
Create or obtain a
PreparedStatement from the pool. |
void |
setNetworkTimeout(java.util.concurrent.Executor executor,
int milliseconds) |
|
void |
setSchema(java.lang.String schema) |
|
java.lang.String |
toString() |
Returns a string representation of the metadata associated with
the innnermost delegate connection.
|
boolean |
validateObject(java.lang.Object key,
java.lang.Object obj) |
KeyedPoolableObjectFactory method for validating
pooled statements. |
printStackTracebeginRequest, clearWarnings, commit, createArrayOf, createBlob, createClob, createNClob, createSQLXML, createStatement, createStatement, createStatement, createStruct, endRequest, 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, setShardingKey, setShardingKey, setShardingKeyIfValid, setShardingKeyIfValid, setTransactionIsolation, setTypeMapclearWarnings, 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, unwrappublic 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.pool - KeyedObjectPool of PreparedStatements and CallableStatements.public void abort(java.util.concurrent.Executor executor)
throws java.sql.SQLException
abort in interface java.sql.Connectionabort in class DelegatingConnectionjava.sql.SQLExceptionpublic void activateObject(java.lang.Object key,
java.lang.Object obj)
throws java.lang.Exception
KeyedPoolableObjectFactory method for activating
pooled statements.activateObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - pooled statement to be activatedjava.lang.Exceptionpublic void close()
throws java.sql.SQLException
PreparedStatements or CallableStatement from the pool, and
close the 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
PoolablePreparedStatements and PoolableCallableStatements.
Closes the underlying statement.destroyObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - the pooled statement to be destroyed.java.lang.Exceptionpublic int getNetworkTimeout()
throws java.sql.SQLException
getNetworkTimeout in interface java.sql.ConnectiongetNetworkTimeout in class DelegatingConnectionjava.sql.SQLExceptionpublic java.lang.String getSchema()
throws java.sql.SQLException
getSchema in interface java.sql.ConnectiongetSchema in class DelegatingConnectionjava.sql.SQLExceptionpublic java.lang.Object makeObject(java.lang.Object obj)
throws java.lang.Exception
KeyedPoolableObjectFactory method for creating
PoolablePreparedStatements or PoolableCallableStatements.
The stmtType field in the key determines whether
a PoolablePreparedStatement or PoolableCallableStatement is created.makeObject in interface org.apache.commons.pool.KeyedPoolableObjectFactoryobj - the key for the PreparedStatement to be createdjava.lang.ExceptioncreateKey(String, int, int, byte)public void passivateObject(java.lang.Object key,
java.lang.Object obj)
throws java.lang.Exception
KeyedPoolableObjectFactory method for passivating
PreparedStatements or CallableStatements.
Invokes PreparedStatement.clearParameters().passivateObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - a PreparedStatementjava.lang.Exceptionpublic java.sql.CallableStatement prepareCall(java.lang.String sql)
throws java.sql.SQLException
CallableStatement from the pool.prepareCall in interface java.sql.ConnectionprepareCall in class DelegatingConnectionsql - the sql string used to define the CallableStatementPoolableCallableStatementjava.sql.SQLExceptionpublic java.sql.CallableStatement prepareCall(java.lang.String sql,
int resultSetType,
int resultSetConcurrency)
throws java.sql.SQLException
CallableStatement from the pool.prepareCall in interface java.sql.ConnectionprepareCall in class DelegatingConnectionsql - the sql string used to define the CallableStatementresultSetType - result set typeresultSetConcurrency - result set concurrencyPoolableCallableStatementjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql)
throws java.sql.SQLException
PreparedStatement from the pool.prepareStatement in interface java.sql.ConnectionprepareStatement in class DelegatingConnectionsql - the sql string used to define the PreparedStatementPoolablePreparedStatementjava.sql.SQLExceptionpublic java.sql.PreparedStatement prepareStatement(java.lang.String sql,
int resultSetType,
int resultSetConcurrency)
throws java.sql.SQLException
PreparedStatement from the pool.prepareStatement in interface java.sql.ConnectionprepareStatement in class DelegatingConnectionsql - the sql string used to define the PreparedStatementresultSetType - result set typeresultSetConcurrency - result set concurrencyPoolablePreparedStatementjava.sql.SQLExceptionpublic void setNetworkTimeout(java.util.concurrent.Executor executor,
int milliseconds)
throws java.sql.SQLException
setNetworkTimeout in interface java.sql.ConnectionsetNetworkTimeout in class DelegatingConnectionjava.sql.SQLExceptionpublic void setSchema(java.lang.String schema)
throws java.sql.SQLException
setSchema in interface java.sql.ConnectionsetSchema in class DelegatingConnectionjava.sql.SQLExceptionpublic java.lang.String toString()
DelegatingConnectiontoString in class DelegatingConnectionpublic boolean validateObject(java.lang.Object key,
java.lang.Object obj)
KeyedPoolableObjectFactory method for validating
pooled statements. Currently always returns true.validateObject in interface org.apache.commons.pool.KeyedPoolableObjectFactorykey - ignoredobj - ignoredCopyright © 2001-2004 Apache Software Foundation. Documenation generated April 15 2019.