org.apache.commons.dbcp2
Class PoolablePreparedStatement<K>
- java.lang.Object
-
- org.apache.commons.dbcp2.AbandonedTrace
-
- org.apache.commons.dbcp2.DelegatingStatement
-
- org.apache.commons.dbcp2.DelegatingPreparedStatement
-
- org.apache.commons.dbcp2.PoolablePreparedStatement<K>
-
- Type Parameters:
K
- the key type
- All Implemented Interfaces:
- AutoCloseable, PreparedStatement, Statement, Wrapper, TrackedUse
public class PoolablePreparedStatement<K> extends DelegatingPreparedStatement
ADelegatingPreparedStatement
that cooperates withPoolingConnection
to implement a pool ofPreparedStatement
s.My
close()
method returns me to my containing pool. (SeePoolingConnection
.)- Since:
- 2.0
- See Also:
PoolingConnection
-
-
Field Summary
-
Fields inherited from interface java.sql.Statement
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO
-
-
Constructor Summary
Constructors Constructor and Description PoolablePreparedStatement(PreparedStatement stmt, K key, KeyedObjectPool<K,PoolablePreparedStatement<K>> pool, DelegatingConnection<?> conn)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description void
activate()
void
addBatch()
Add batch.void
clearBatch()
Clear Batch.void
close()
Return me to my pool.void
passivate()
-
Methods inherited from class org.apache.commons.dbcp2.DelegatingPreparedStatement
clearParameters, execute, executeQuery, executeUpdate, getMetaData, getParameterMetaData, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBoolean, setByte, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setDate, setDate, setDouble, setFloat, setInt, setLong, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setNull, setNull, setObject, setObject, setObject, setRef, setRowId, setShort, setSQLXML, setString, setTime, setTime, setTimestamp, setTimestamp, setUnicodeStream, setURL, toString
-
Methods inherited from class org.apache.commons.dbcp2.DelegatingStatement
addBatch, cancel, checkOpen, clearWarnings, closeOnCompletion, execute, execute, execute, execute, executeBatch, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, finalize, getConnection, getConnectionInternal, getDelegate, getFetchDirection, getFetchSize, getGeneratedKeys, getInnermostDelegate, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, handleException, isClosed, isClosedInternal, isCloseOnCompletion, isPoolable, isWrapperFor, setClosedInternal, setCursorName, setDelegate, setEscapeProcessing, setFetchDirection, setFetchSize, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout, unwrap
-
Methods inherited from class org.apache.commons.dbcp2.AbandonedTrace
addTrace, clearTrace, getLastUsed, getTrace, removeTrace, setLastUsed, setLastUsed
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.sql.PreparedStatement
executeLargeUpdate, setObject, setObject
-
Methods inherited from interface java.sql.Statement
addBatch, cancel, clearWarnings, closeOnCompletion, execute, execute, execute, execute, executeBatch, executeLargeBatch, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeLargeUpdate, executeQuery, executeUpdate, executeUpdate, executeUpdate, executeUpdate, getConnection, getFetchDirection, getFetchSize, getGeneratedKeys, getLargeMaxRows, getLargeUpdateCount, getMaxFieldSize, getMaxRows, getMoreResults, getMoreResults, getQueryTimeout, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings, isClosed, isCloseOnCompletion, isPoolable, setCursorName, setEscapeProcessing, setFetchDirection, setFetchSize, setLargeMaxRows, setMaxFieldSize, setMaxRows, setPoolable, setQueryTimeout
-
Methods inherited from interface java.sql.Wrapper
isWrapperFor, unwrap
-
-
-
-
Constructor Detail
-
PoolablePreparedStatement
public PoolablePreparedStatement(PreparedStatement stmt, K key, KeyedObjectPool<K,PoolablePreparedStatement<K>> pool, DelegatingConnection<?> conn)
Constructor- Parameters:
stmt
- my underlyingPreparedStatement
key
- my key" as used byKeyedObjectPool
pool
- theKeyedObjectPool
from which I was obtained.conn
- theConnection
from which I was created
-
-
Method Detail
-
addBatch
public void addBatch() throws SQLException
Add batch.- Specified by:
addBatch
in interfacePreparedStatement
- Overrides:
addBatch
in classDelegatingPreparedStatement
- Throws:
SQLException
-
clearBatch
public void clearBatch() throws SQLException
Clear Batch.- Specified by:
clearBatch
in interfaceStatement
- Overrides:
clearBatch
in classDelegatingStatement
- Throws:
SQLException
-
close
public void close() throws SQLException
Return me to my pool.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceStatement
- Overrides:
close
in classDelegatingStatement
- Throws:
SQLException
-
activate
public void activate() throws SQLException
- Overrides:
activate
in classDelegatingStatement
- Throws:
SQLException
- thrown by the delegating statement.
-
passivate
public void passivate() throws SQLException
- Overrides:
passivate
in classDelegatingStatement
- Throws:
SQLException
- thrown by the delegating statement.
-
-