public final class NewProxyPreparedStatement extends java.lang.Object implements java.sql.PreparedStatement, C3P0ProxyStatement, ProxyResultSetDetachable
| Modifier and Type | Field and Description |
|---|---|
protected java.sql.PreparedStatement |
inner |
RAW_STATEMENT| Modifier and Type | Method and Description |
|---|---|
void |
addBatch() |
void |
addBatch(java.lang.String a) |
void |
cancel() |
void |
clearBatch() |
void |
clearParameters() |
void |
clearWarnings() |
void |
close() |
void |
closeOnCompletion() |
void |
detachProxyResultSet(java.sql.ResultSet prs) |
boolean |
execute() |
boolean |
execute(java.lang.String a) |
boolean |
execute(java.lang.String a,
int b) |
boolean |
execute(java.lang.String a,
int[] b) |
boolean |
execute(java.lang.String a,
java.lang.String[] b) |
int[] |
executeBatch() |
long[] |
executeLargeBatch() |
long |
executeLargeUpdate() |
long |
executeLargeUpdate(java.lang.String a) |
long |
executeLargeUpdate(java.lang.String a,
int b) |
long |
executeLargeUpdate(java.lang.String a,
int[] b) |
long |
executeLargeUpdate(java.lang.String a,
java.lang.String[] b) |
java.sql.ResultSet |
executeQuery() |
java.sql.ResultSet |
executeQuery(java.lang.String a) |
int |
executeUpdate() |
int |
executeUpdate(java.lang.String a) |
int |
executeUpdate(java.lang.String a,
int b) |
int |
executeUpdate(java.lang.String a,
int[] b) |
int |
executeUpdate(java.lang.String a,
java.lang.String[] b) |
java.sql.Connection |
getConnection() |
int |
getFetchDirection() |
int |
getFetchSize() |
java.sql.ResultSet |
getGeneratedKeys() |
long |
getLargeMaxRows() |
long |
getLargeUpdateCount() |
int |
getMaxFieldSize() |
int |
getMaxRows() |
java.sql.ResultSetMetaData |
getMetaData() |
boolean |
getMoreResults() |
boolean |
getMoreResults(int a) |
java.sql.ParameterMetaData |
getParameterMetaData() |
int |
getQueryTimeout() |
java.sql.ResultSet |
getResultSet() |
int |
getResultSetConcurrency() |
int |
getResultSetHoldability() |
int |
getResultSetType() |
int |
getUpdateCount() |
java.sql.SQLWarning |
getWarnings() |
boolean |
isClosed() |
boolean |
isCloseOnCompletion() |
boolean |
isPoolable() |
boolean |
isWrapperFor(java.lang.Class a) |
java.lang.Object |
rawStatementOperation(java.lang.reflect.Method m,
java.lang.Object target,
java.lang.Object[] args)
Allows one to work with the unproxied, raw vendor-provided Statement .
|
void |
setArray(int a,
java.sql.Array b) |
void |
setAsciiStream(int a,
java.io.InputStream b) |
void |
setAsciiStream(int a,
java.io.InputStream b,
int c) |
void |
setAsciiStream(int a,
java.io.InputStream b,
long c) |
void |
setBigDecimal(int a,
java.math.BigDecimal b) |
void |
setBinaryStream(int a,
java.io.InputStream b) |
void |
setBinaryStream(int a,
java.io.InputStream b,
int c) |
void |
setBinaryStream(int a,
java.io.InputStream b,
long c) |
void |
setBlob(int a,
java.sql.Blob b) |
void |
setBlob(int a,
java.io.InputStream b) |
void |
setBlob(int a,
java.io.InputStream b,
long c) |
void |
setBoolean(int a,
boolean b) |
void |
setByte(int a,
byte b) |
void |
setBytes(int a,
byte[] b) |
void |
setCharacterStream(int a,
java.io.Reader b) |
void |
setCharacterStream(int a,
java.io.Reader b,
int c) |
void |
setCharacterStream(int a,
java.io.Reader b,
long c) |
void |
setClob(int a,
java.sql.Clob b) |
void |
setClob(int a,
java.io.Reader b) |
void |
setClob(int a,
java.io.Reader b,
long c) |
void |
setCursorName(java.lang.String a) |
void |
setDate(int a,
java.sql.Date b) |
void |
setDate(int a,
java.sql.Date b,
java.util.Calendar c) |
void |
setDouble(int a,
double b) |
void |
setEscapeProcessing(boolean a) |
void |
setFetchDirection(int a) |
void |
setFetchSize(int a) |
void |
setFloat(int a,
float b) |
void |
setInt(int a,
int b) |
void |
setLargeMaxRows(long a) |
void |
setLong(int a,
long b) |
void |
setMaxFieldSize(int a) |
void |
setMaxRows(int a) |
void |
setNCharacterStream(int a,
java.io.Reader b) |
void |
setNCharacterStream(int a,
java.io.Reader b,
long c) |
void |
setNClob(int a,
java.sql.NClob b) |
void |
setNClob(int a,
java.io.Reader b) |
void |
setNClob(int a,
java.io.Reader b,
long c) |
void |
setNString(int a,
java.lang.String b) |
void |
setNull(int a,
int b) |
void |
setNull(int a,
int b,
java.lang.String c) |
void |
setObject(int a,
java.lang.Object b) |
void |
setObject(int a,
java.lang.Object b,
int c) |
void |
setObject(int a,
java.lang.Object b,
int c,
int d) |
void |
setObject(int a,
java.lang.Object b,
java.sql.SQLType c) |
void |
setObject(int a,
java.lang.Object b,
java.sql.SQLType c,
int d) |
void |
setPoolable(boolean a) |
void |
setQueryTimeout(int a) |
void |
setRef(int a,
java.sql.Ref b) |
void |
setRowId(int a,
java.sql.RowId b) |
void |
setShort(int a,
short b) |
void |
setSQLXML(int a,
java.sql.SQLXML b) |
void |
setString(int a,
java.lang.String b) |
void |
setTime(int a,
java.sql.Time b) |
void |
setTime(int a,
java.sql.Time b,
java.util.Calendar c) |
void |
setTimestamp(int a,
java.sql.Timestamp b) |
void |
setTimestamp(int a,
java.sql.Timestamp b,
java.util.Calendar c) |
void |
setUnicodeStream(int a,
java.io.InputStream b,
int c) |
void |
setURL(int a,
java.net.URL b) |
java.lang.String |
toString() |
java.lang.Object |
unwrap(java.lang.Class a) |
public final boolean execute()
throws java.sql.SQLException
execute in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBoolean(int a,
boolean b)
throws java.sql.SQLException
setBoolean in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setByte(int a,
byte b)
throws java.sql.SQLException
setByte in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setShort(int a,
short b)
throws java.sql.SQLException
setShort in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setInt(int a,
int b)
throws java.sql.SQLException
setInt in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setLong(int a,
long b)
throws java.sql.SQLException
setLong in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setFloat(int a,
float b)
throws java.sql.SQLException
setFloat in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setDouble(int a,
double b)
throws java.sql.SQLException
setDouble in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setTimestamp(int a,
java.sql.Timestamp b,
java.util.Calendar c)
throws java.sql.SQLException
setTimestamp in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setTimestamp(int a,
java.sql.Timestamp b)
throws java.sql.SQLException
setTimestamp in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final java.sql.ResultSetMetaData getMetaData()
throws java.sql.SQLException
getMetaData in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final java.sql.ResultSet executeQuery()
throws java.sql.SQLException
executeQuery in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final int executeUpdate()
throws java.sql.SQLException
executeUpdate in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void addBatch()
throws java.sql.SQLException
addBatch in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final long executeLargeUpdate()
throws java.sql.SQLException
executeLargeUpdate in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNull(int a,
int b)
throws java.sql.SQLException
setNull in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNull(int a,
int b,
java.lang.String c)
throws java.sql.SQLException
setNull in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBigDecimal(int a,
java.math.BigDecimal b)
throws java.sql.SQLException
setBigDecimal in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setString(int a,
java.lang.String b)
throws java.sql.SQLException
setString in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBytes(int a,
byte[] b)
throws java.sql.SQLException
setBytes in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setAsciiStream(int a,
java.io.InputStream b,
long c)
throws java.sql.SQLException
setAsciiStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setAsciiStream(int a,
java.io.InputStream b)
throws java.sql.SQLException
setAsciiStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setAsciiStream(int a,
java.io.InputStream b,
int c)
throws java.sql.SQLException
setAsciiStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setUnicodeStream(int a,
java.io.InputStream b,
int c)
throws java.sql.SQLException
setUnicodeStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBinaryStream(int a,
java.io.InputStream b,
long c)
throws java.sql.SQLException
setBinaryStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBinaryStream(int a,
java.io.InputStream b)
throws java.sql.SQLException
setBinaryStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBinaryStream(int a,
java.io.InputStream b,
int c)
throws java.sql.SQLException
setBinaryStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void clearParameters()
throws java.sql.SQLException
clearParameters in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setObject(int a,
java.lang.Object b,
int c,
int d)
throws java.sql.SQLException
setObject in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setObject(int a,
java.lang.Object b,
java.sql.SQLType c,
int d)
throws java.sql.SQLException
setObject in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setObject(int a,
java.lang.Object b,
int c)
throws java.sql.SQLException
setObject in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setObject(int a,
java.lang.Object b)
throws java.sql.SQLException
setObject in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setObject(int a,
java.lang.Object b,
java.sql.SQLType c)
throws java.sql.SQLException
setObject in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setCharacterStream(int a,
java.io.Reader b)
throws java.sql.SQLException
setCharacterStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setCharacterStream(int a,
java.io.Reader b,
long c)
throws java.sql.SQLException
setCharacterStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setCharacterStream(int a,
java.io.Reader b,
int c)
throws java.sql.SQLException
setCharacterStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setRef(int a,
java.sql.Ref b)
throws java.sql.SQLException
setRef in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBlob(int a,
java.sql.Blob b)
throws java.sql.SQLException
setBlob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBlob(int a,
java.io.InputStream b,
long c)
throws java.sql.SQLException
setBlob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setBlob(int a,
java.io.InputStream b)
throws java.sql.SQLException
setBlob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setClob(int a,
java.io.Reader b)
throws java.sql.SQLException
setClob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setClob(int a,
java.io.Reader b,
long c)
throws java.sql.SQLException
setClob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setClob(int a,
java.sql.Clob b)
throws java.sql.SQLException
setClob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setArray(int a,
java.sql.Array b)
throws java.sql.SQLException
setArray in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final java.sql.ParameterMetaData getParameterMetaData()
throws java.sql.SQLException
getParameterMetaData in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setRowId(int a,
java.sql.RowId b)
throws java.sql.SQLException
setRowId in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNString(int a,
java.lang.String b)
throws java.sql.SQLException
setNString in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNCharacterStream(int a,
java.io.Reader b,
long c)
throws java.sql.SQLException
setNCharacterStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNCharacterStream(int a,
java.io.Reader b)
throws java.sql.SQLException
setNCharacterStream in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNClob(int a,
java.io.Reader b)
throws java.sql.SQLException
setNClob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNClob(int a,
java.sql.NClob b)
throws java.sql.SQLException
setNClob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setNClob(int a,
java.io.Reader b,
long c)
throws java.sql.SQLException
setNClob in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setSQLXML(int a,
java.sql.SQLXML b)
throws java.sql.SQLException
setSQLXML in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setURL(int a,
java.net.URL b)
throws java.sql.SQLException
setURL in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setTime(int a,
java.sql.Time b,
java.util.Calendar c)
throws java.sql.SQLException
setTime in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setTime(int a,
java.sql.Time b)
throws java.sql.SQLException
setTime in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setDate(int a,
java.sql.Date b,
java.util.Calendar c)
throws java.sql.SQLException
setDate in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final void setDate(int a,
java.sql.Date b)
throws java.sql.SQLException
setDate in interface java.sql.PreparedStatementjava.sql.SQLExceptionpublic final boolean execute(java.lang.String a,
java.lang.String[] b)
throws java.sql.SQLException
execute in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean execute(java.lang.String a)
throws java.sql.SQLException
execute in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean execute(java.lang.String a,
int b)
throws java.sql.SQLException
execute in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean execute(java.lang.String a,
int[] b)
throws java.sql.SQLException
execute in interface java.sql.Statementjava.sql.SQLExceptionpublic final void close()
throws java.sql.SQLException
close in interface java.lang.AutoCloseableclose in interface java.sql.Statementjava.sql.SQLExceptionpublic final java.sql.Connection getConnection()
throws java.sql.SQLException
getConnection in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean isClosed()
throws java.sql.SQLException
isClosed in interface java.sql.Statementjava.sql.SQLExceptionpublic final java.sql.SQLWarning getWarnings()
throws java.sql.SQLException
getWarnings in interface java.sql.Statementjava.sql.SQLExceptionpublic final void clearWarnings()
throws java.sql.SQLException
clearWarnings in interface java.sql.Statementjava.sql.SQLExceptionpublic final java.sql.ResultSet executeQuery(java.lang.String a)
throws java.sql.SQLException
executeQuery in interface java.sql.Statementjava.sql.SQLExceptionpublic final int executeUpdate(java.lang.String a,
int[] b)
throws java.sql.SQLException
executeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final int executeUpdate(java.lang.String a,
int b)
throws java.sql.SQLException
executeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final int executeUpdate(java.lang.String a)
throws java.sql.SQLException
executeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final int executeUpdate(java.lang.String a,
java.lang.String[] b)
throws java.sql.SQLException
executeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getMaxFieldSize()
throws java.sql.SQLException
getMaxFieldSize in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setMaxFieldSize(int a)
throws java.sql.SQLException
setMaxFieldSize in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getMaxRows()
throws java.sql.SQLException
getMaxRows in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setMaxRows(int a)
throws java.sql.SQLException
setMaxRows in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setEscapeProcessing(boolean a)
throws java.sql.SQLException
setEscapeProcessing in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getQueryTimeout()
throws java.sql.SQLException
getQueryTimeout in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setQueryTimeout(int a)
throws java.sql.SQLException
setQueryTimeout in interface java.sql.Statementjava.sql.SQLExceptionpublic final void cancel()
throws java.sql.SQLException
cancel in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setCursorName(java.lang.String a)
throws java.sql.SQLException
setCursorName in interface java.sql.Statementjava.sql.SQLExceptionpublic final java.sql.ResultSet getResultSet()
throws java.sql.SQLException
getResultSet in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getUpdateCount()
throws java.sql.SQLException
getUpdateCount in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean getMoreResults(int a)
throws java.sql.SQLException
getMoreResults in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean getMoreResults()
throws java.sql.SQLException
getMoreResults in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setFetchDirection(int a)
throws java.sql.SQLException
setFetchDirection in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getFetchDirection()
throws java.sql.SQLException
getFetchDirection in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setFetchSize(int a)
throws java.sql.SQLException
setFetchSize in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getFetchSize()
throws java.sql.SQLException
getFetchSize in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getResultSetConcurrency()
throws java.sql.SQLException
getResultSetConcurrency in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getResultSetType()
throws java.sql.SQLException
getResultSetType in interface java.sql.Statementjava.sql.SQLExceptionpublic final void addBatch(java.lang.String a)
throws java.sql.SQLException
addBatch in interface java.sql.Statementjava.sql.SQLExceptionpublic final void clearBatch()
throws java.sql.SQLException
clearBatch in interface java.sql.Statementjava.sql.SQLExceptionpublic final int[] executeBatch()
throws java.sql.SQLException
executeBatch in interface java.sql.Statementjava.sql.SQLExceptionpublic final java.sql.ResultSet getGeneratedKeys()
throws java.sql.SQLException
getGeneratedKeys in interface java.sql.Statementjava.sql.SQLExceptionpublic final int getResultSetHoldability()
throws java.sql.SQLException
getResultSetHoldability in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setPoolable(boolean a)
throws java.sql.SQLException
setPoolable in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean isPoolable()
throws java.sql.SQLException
isPoolable in interface java.sql.Statementjava.sql.SQLExceptionpublic final void closeOnCompletion()
throws java.sql.SQLException
closeOnCompletion in interface java.sql.Statementjava.sql.SQLExceptionpublic final boolean isCloseOnCompletion()
throws java.sql.SQLException
isCloseOnCompletion in interface java.sql.Statementjava.sql.SQLExceptionpublic final long getLargeUpdateCount()
throws java.sql.SQLException
getLargeUpdateCount in interface java.sql.Statementjava.sql.SQLExceptionpublic final void setLargeMaxRows(long a)
throws java.sql.SQLException
setLargeMaxRows in interface java.sql.Statementjava.sql.SQLExceptionpublic final long getLargeMaxRows()
throws java.sql.SQLException
getLargeMaxRows in interface java.sql.Statementjava.sql.SQLExceptionpublic final long[] executeLargeBatch()
throws java.sql.SQLException
executeLargeBatch in interface java.sql.Statementjava.sql.SQLExceptionpublic final long executeLargeUpdate(java.lang.String a,
java.lang.String[] b)
throws java.sql.SQLException
executeLargeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final long executeLargeUpdate(java.lang.String a,
int[] b)
throws java.sql.SQLException
executeLargeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final long executeLargeUpdate(java.lang.String a,
int b)
throws java.sql.SQLException
executeLargeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final long executeLargeUpdate(java.lang.String a)
throws java.sql.SQLException
executeLargeUpdate in interface java.sql.Statementjava.sql.SQLExceptionpublic final java.lang.Object unwrap(java.lang.Class a)
throws java.sql.SQLException
unwrap in interface java.sql.Wrapperjava.sql.SQLExceptionpublic final boolean isWrapperFor(java.lang.Class a)
throws java.sql.SQLException
isWrapperFor in interface java.sql.Wrapperjava.sql.SQLExceptionpublic java.lang.String toString()
toString in class java.lang.Objectpublic void detachProxyResultSet(java.sql.ResultSet prs)
detachProxyResultSet in interface ProxyResultSetDetachablepublic java.lang.Object rawStatementOperation(java.lang.reflect.Method m,
java.lang.Object target,
java.lang.Object[] args)
throws java.lang.IllegalAccessException,
java.lang.reflect.InvocationTargetException,
java.sql.SQLException
C3P0ProxyStatementAllows one to work with the unproxied, raw vendor-provided Statement . Some database companies never got over the "common interfaces mean no more vendor lock-in!" thing, and offer non-standard API on their Statements. This method permits you to "pierce" the connection-pooling layer to call non-standard methods on the original Statement, or to pass the original Statement to functions that are not implementation neutral.
To use this functionality, you'll need to cast a Statement retrieved from a c3p0-provided Connection to a C3P0ProxyStatement.
This method works by making a reflective call of method m on Object target (which may be null for static methods), passing and argument list args. For the method target, or for any argument, you may substitute the special token C3P0ProxyStatement.RAW_STATEMENT
Any ResultSets returned by the operation will be proxied and c3p0-managed, meaning that these resources will be automatically closed if the user does not close them first when this Statement is closed or checked into the statement cache. Any other resources returned by the operation are the user's responsibility to clean up!
If you have turned statement pooling on, incautious use of this method can corrupt the PreparedStatement cache, by breaking the invariant that all cached PreparedStatements should be equivalent to a PreparedStatement newly created with the same arguments to prepareStatement(...) or prepareCall(...). If your vendor supplies API that allows you to modify the state or configuration of a Statement in some nonstandard way, and you do not undo this modification prior to closing the Statement or the Connection that prepared it, future preparers of the same Statement may or may not see your modification, depending on your use of the cache. Thus, it is inadvisable to use this method to call nonstandard mutators on PreparedStatements if statement pooling is turned on..
rawStatementOperation in interface C3P0ProxyStatementjava.lang.IllegalAccessExceptionjava.lang.reflect.InvocationTargetExceptionjava.sql.SQLException