org.apache.commons.dbcp2
Class DelegatingPreparedStatement
- java.lang.Object
-
- org.apache.commons.dbcp2.AbandonedTrace
-
- org.apache.commons.dbcp2.DelegatingStatement
-
- org.apache.commons.dbcp2.DelegatingPreparedStatement
-
- All Implemented Interfaces:
- AutoCloseable, PreparedStatement, Statement, Wrapper, TrackedUse
- Direct Known Subclasses:
- DelegatingCallableStatement, PoolablePreparedStatement
public class DelegatingPreparedStatement extends DelegatingStatement implements PreparedStatement
A base delegating implementation ofPreparedStatement
.All of the methods from the
PreparedStatement
interface simply check to see that thePreparedStatement
is active, and call the corresponding method on the "delegate" provided in my constructor.Extends AbandonedTrace to implement Statement tracking and logging of code which created the Statement. Tracking the Statement ensures that the Connection which created it can close any open Statement's on Connection close.
- Since:
- 2.0
-
-
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 DelegatingPreparedStatement(DelegatingConnection<?> connection, PreparedStatement statement)
Create a wrapper for the Statement which traces this Statement to the Connection which created it and the code which created it.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method and Description void
addBatch()
void
clearParameters()
boolean
execute()
ResultSet
executeQuery()
int
executeUpdate()
ResultSetMetaData
getMetaData()
ParameterMetaData
getParameterMetaData()
void
setArray(int i, Array x)
void
setAsciiStream(int parameterIndex, InputStream inputStream)
void
setAsciiStream(int parameterIndex, InputStream x, int length)
void
setAsciiStream(int parameterIndex, InputStream inputStream, long length)
void
setBigDecimal(int parameterIndex, BigDecimal x)
void
setBinaryStream(int parameterIndex, InputStream inputStream)
void
setBinaryStream(int parameterIndex, InputStream x, int length)
void
setBinaryStream(int parameterIndex, InputStream inputStream, long length)
void
setBlob(int i, Blob x)
void
setBlob(int parameterIndex, InputStream inputStream)
void
setBlob(int parameterIndex, InputStream inputStream, long length)
void
setBoolean(int parameterIndex, boolean x)
void
setByte(int parameterIndex, byte x)
void
setBytes(int parameterIndex, byte[] x)
void
setCharacterStream(int parameterIndex, Reader reader)
void
setCharacterStream(int parameterIndex, Reader reader, int length)
void
setCharacterStream(int parameterIndex, Reader reader, long length)
void
setClob(int i, Clob x)
void
setClob(int parameterIndex, Reader reader)
void
setClob(int parameterIndex, Reader reader, long length)
void
setDate(int parameterIndex, Date x)
void
setDate(int parameterIndex, Date x, Calendar cal)
void
setDouble(int parameterIndex, double x)
void
setFloat(int parameterIndex, float x)
void
setInt(int parameterIndex, int x)
void
setLong(int parameterIndex, long x)
void
setNCharacterStream(int parameterIndex, Reader reader)
void
setNCharacterStream(int parameterIndex, Reader value, long length)
void
setNClob(int parameterIndex, NClob value)
void
setNClob(int parameterIndex, Reader reader)
void
setNClob(int parameterIndex, Reader reader, long length)
void
setNString(int parameterIndex, String value)
void
setNull(int parameterIndex, int sqlType)
void
setNull(int paramIndex, int sqlType, String typeName)
void
setObject(int parameterIndex, Object x)
void
setObject(int parameterIndex, Object x, int targetSqlType)
void
setObject(int parameterIndex, Object x, int targetSqlType, int scale)
void
setRef(int i, Ref x)
void
setRowId(int parameterIndex, RowId value)
void
setShort(int parameterIndex, short x)
void
setSQLXML(int parameterIndex, SQLXML value)
void
setString(int parameterIndex, String x)
void
setTime(int parameterIndex, Time x)
void
setTime(int parameterIndex, Time x, Calendar cal)
void
setTimestamp(int parameterIndex, Timestamp x)
void
setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
void
setUnicodeStream(int parameterIndex, InputStream x, int length)
Deprecated.Use setAsciiStream(), setCharacterStream() or setNCharacterStream()void
setURL(int parameterIndex, URL x)
String
toString()
Returns a String representation of this object.-
Methods inherited from class org.apache.commons.dbcp2.DelegatingStatement
activate, addBatch, cancel, checkOpen, clearBatch, clearWarnings, close, 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, passivate, 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, clearBatch, clearWarnings, close, 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
-
DelegatingPreparedStatement
public DelegatingPreparedStatement(DelegatingConnection<?> connection, PreparedStatement statement)
Create a wrapper for the Statement which traces this Statement to the Connection which created it and the code which created it.- Parameters:
statement
- thePreparedStatement
to delegate all calls to.connection
- theDelegatingConnection
that created this statement.
-
-
Method Detail
-
executeQuery
public ResultSet executeQuery() throws SQLException
- Specified by:
executeQuery
in interfacePreparedStatement
- Throws:
SQLException
-
executeUpdate
public int executeUpdate() throws SQLException
- Specified by:
executeUpdate
in interfacePreparedStatement
- Throws:
SQLException
-
setNull
public void setNull(int parameterIndex, int sqlType) throws SQLException
- Specified by:
setNull
in interfacePreparedStatement
- Throws:
SQLException
-
setBoolean
public void setBoolean(int parameterIndex, boolean x) throws SQLException
- Specified by:
setBoolean
in interfacePreparedStatement
- Throws:
SQLException
-
setByte
public void setByte(int parameterIndex, byte x) throws SQLException
- Specified by:
setByte
in interfacePreparedStatement
- Throws:
SQLException
-
setShort
public void setShort(int parameterIndex, short x) throws SQLException
- Specified by:
setShort
in interfacePreparedStatement
- Throws:
SQLException
-
setInt
public void setInt(int parameterIndex, int x) throws SQLException
- Specified by:
setInt
in interfacePreparedStatement
- Throws:
SQLException
-
setLong
public void setLong(int parameterIndex, long x) throws SQLException
- Specified by:
setLong
in interfacePreparedStatement
- Throws:
SQLException
-
setFloat
public void setFloat(int parameterIndex, float x) throws SQLException
- Specified by:
setFloat
in interfacePreparedStatement
- Throws:
SQLException
-
setDouble
public void setDouble(int parameterIndex, double x) throws SQLException
- Specified by:
setDouble
in interfacePreparedStatement
- Throws:
SQLException
-
setBigDecimal
public void setBigDecimal(int parameterIndex, BigDecimal x) throws SQLException
- Specified by:
setBigDecimal
in interfacePreparedStatement
- Throws:
SQLException
-
setString
public void setString(int parameterIndex, String x) throws SQLException
- Specified by:
setString
in interfacePreparedStatement
- Throws:
SQLException
-
setBytes
public void setBytes(int parameterIndex, byte[] x) throws SQLException
- Specified by:
setBytes
in interfacePreparedStatement
- Throws:
SQLException
-
setDate
public void setDate(int parameterIndex, Date x) throws SQLException
- Specified by:
setDate
in interfacePreparedStatement
- Throws:
SQLException
-
setTime
public void setTime(int parameterIndex, Time x) throws SQLException
- Specified by:
setTime
in interfacePreparedStatement
- Throws:
SQLException
-
setTimestamp
public void setTimestamp(int parameterIndex, Timestamp x) throws SQLException
- Specified by:
setTimestamp
in interfacePreparedStatement
- Throws:
SQLException
-
setAsciiStream
public void setAsciiStream(int parameterIndex, InputStream x, int length) throws SQLException
- Specified by:
setAsciiStream
in interfacePreparedStatement
- Throws:
SQLException
-
setUnicodeStream
@Deprecated public void setUnicodeStream(int parameterIndex, InputStream x, int length) throws SQLException
Deprecated. Use setAsciiStream(), setCharacterStream() or setNCharacterStream()- Specified by:
setUnicodeStream
in interfacePreparedStatement
- Throws:
SQLException
-
setBinaryStream
public void setBinaryStream(int parameterIndex, InputStream x, int length) throws SQLException
- Specified by:
setBinaryStream
in interfacePreparedStatement
- Throws:
SQLException
-
clearParameters
public void clearParameters() throws SQLException
- Specified by:
clearParameters
in interfacePreparedStatement
- Throws:
SQLException
-
setObject
public void setObject(int parameterIndex, Object x, int targetSqlType, int scale) throws SQLException
- Specified by:
setObject
in interfacePreparedStatement
- Throws:
SQLException
-
setObject
public void setObject(int parameterIndex, Object x, int targetSqlType) throws SQLException
- Specified by:
setObject
in interfacePreparedStatement
- Throws:
SQLException
-
setObject
public void setObject(int parameterIndex, Object x) throws SQLException
- Specified by:
setObject
in interfacePreparedStatement
- Throws:
SQLException
-
execute
public boolean execute() throws SQLException
- Specified by:
execute
in interfacePreparedStatement
- Throws:
SQLException
-
addBatch
public void addBatch() throws SQLException
- Specified by:
addBatch
in interfacePreparedStatement
- Throws:
SQLException
-
setCharacterStream
public void setCharacterStream(int parameterIndex, Reader reader, int length) throws SQLException
- Specified by:
setCharacterStream
in interfacePreparedStatement
- Throws:
SQLException
-
setRef
public void setRef(int i, Ref x) throws SQLException
- Specified by:
setRef
in interfacePreparedStatement
- Throws:
SQLException
-
setBlob
public void setBlob(int i, Blob x) throws SQLException
- Specified by:
setBlob
in interfacePreparedStatement
- Throws:
SQLException
-
setClob
public void setClob(int i, Clob x) throws SQLException
- Specified by:
setClob
in interfacePreparedStatement
- Throws:
SQLException
-
setArray
public void setArray(int i, Array x) throws SQLException
- Specified by:
setArray
in interfacePreparedStatement
- Throws:
SQLException
-
getMetaData
public ResultSetMetaData getMetaData() throws SQLException
- Specified by:
getMetaData
in interfacePreparedStatement
- Throws:
SQLException
-
setDate
public void setDate(int parameterIndex, Date x, Calendar cal) throws SQLException
- Specified by:
setDate
in interfacePreparedStatement
- Throws:
SQLException
-
setTime
public void setTime(int parameterIndex, Time x, Calendar cal) throws SQLException
- Specified by:
setTime
in interfacePreparedStatement
- Throws:
SQLException
-
setTimestamp
public void setTimestamp(int parameterIndex, Timestamp x, Calendar cal) throws SQLException
- Specified by:
setTimestamp
in interfacePreparedStatement
- Throws:
SQLException
-
setNull
public void setNull(int paramIndex, int sqlType, String typeName) throws SQLException
- Specified by:
setNull
in interfacePreparedStatement
- Throws:
SQLException
-
toString
public String toString()
Returns a String representation of this object.- Overrides:
toString
in classDelegatingStatement
- Returns:
- String
-
setURL
public void setURL(int parameterIndex, URL x) throws SQLException
- Specified by:
setURL
in interfacePreparedStatement
- Throws:
SQLException
-
getParameterMetaData
public ParameterMetaData getParameterMetaData() throws SQLException
- Specified by:
getParameterMetaData
in interfacePreparedStatement
- Throws:
SQLException
-
setRowId
public void setRowId(int parameterIndex, RowId value) throws SQLException
- Specified by:
setRowId
in interfacePreparedStatement
- Throws:
SQLException
-
setNString
public void setNString(int parameterIndex, String value) throws SQLException
- Specified by:
setNString
in interfacePreparedStatement
- Throws:
SQLException
-
setNCharacterStream
public void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException
- Specified by:
setNCharacterStream
in interfacePreparedStatement
- Throws:
SQLException
-
setNClob
public void setNClob(int parameterIndex, NClob value) throws SQLException
- Specified by:
setNClob
in interfacePreparedStatement
- Throws:
SQLException
-
setClob
public void setClob(int parameterIndex, Reader reader, long length) throws SQLException
- Specified by:
setClob
in interfacePreparedStatement
- Throws:
SQLException
-
setBlob
public void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException
- Specified by:
setBlob
in interfacePreparedStatement
- Throws:
SQLException
-
setNClob
public void setNClob(int parameterIndex, Reader reader, long length) throws SQLException
- Specified by:
setNClob
in interfacePreparedStatement
- Throws:
SQLException
-
setSQLXML
public void setSQLXML(int parameterIndex, SQLXML value) throws SQLException
- Specified by:
setSQLXML
in interfacePreparedStatement
- Throws:
SQLException
-
setAsciiStream
public void setAsciiStream(int parameterIndex, InputStream inputStream, long length) throws SQLException
- Specified by:
setAsciiStream
in interfacePreparedStatement
- Throws:
SQLException
-
setBinaryStream
public void setBinaryStream(int parameterIndex, InputStream inputStream, long length) throws SQLException
- Specified by:
setBinaryStream
in interfacePreparedStatement
- Throws:
SQLException
-
setCharacterStream
public void setCharacterStream(int parameterIndex, Reader reader, long length) throws SQLException
- Specified by:
setCharacterStream
in interfacePreparedStatement
- Throws:
SQLException
-
setAsciiStream
public void setAsciiStream(int parameterIndex, InputStream inputStream) throws SQLException
- Specified by:
setAsciiStream
in interfacePreparedStatement
- Throws:
SQLException
-
setBinaryStream
public void setBinaryStream(int parameterIndex, InputStream inputStream) throws SQLException
- Specified by:
setBinaryStream
in interfacePreparedStatement
- Throws:
SQLException
-
setCharacterStream
public void setCharacterStream(int parameterIndex, Reader reader) throws SQLException
- Specified by:
setCharacterStream
in interfacePreparedStatement
- Throws:
SQLException
-
setNCharacterStream
public void setNCharacterStream(int parameterIndex, Reader reader) throws SQLException
- Specified by:
setNCharacterStream
in interfacePreparedStatement
- Throws:
SQLException
-
setClob
public void setClob(int parameterIndex, Reader reader) throws SQLException
- Specified by:
setClob
in interfacePreparedStatement
- Throws:
SQLException
-
setBlob
public void setBlob(int parameterIndex, InputStream inputStream) throws SQLException
- Specified by:
setBlob
in interfacePreparedStatement
- Throws:
SQLException
-
setNClob
public void setNClob(int parameterIndex, Reader reader) throws SQLException
- Specified by:
setNClob
in interfacePreparedStatement
- Throws:
SQLException
-
-