public class Jdbc4NativeJdbcExtractor extends NativeJdbcExtractorAdapter
NativeJdbcExtractor implementation that delegates to JDBC 4.0's
unwrap method, as defined by Wrapper.
You will typically need to specify a vendor Connection type
/ Statement type / ResultSet type
to extract, since JDBC 4.0 only actually unwraps to a given target type.
Note: Only use this when actually running against a JDBC 4.0 driver, with a
connection pool that supports the JDBC 4.0 API (i.e. at least accepts JDBC 4.0
API calls and passes them through to the underlying driver)! Other than that,
there is no need for connection pool specific setup. As of JDBC 4.0,
NativeJdbcExtractors will typically be implemented for specific drivers
instead of for specific pools (e.g. OracleJdbc4NativeJdbcExtractor).
Wrapper.unwrap(java.lang.Class<T>),
SimpleNativeJdbcExtractor,
JdbcTemplate.setNativeJdbcExtractor(org.springframework.jdbc.support.nativejdbc.NativeJdbcExtractor),
OracleLobHandler.setNativeJdbcExtractor(org.springframework.jdbc.support.nativejdbc.NativeJdbcExtractor)| Constructor and Description |
|---|
Jdbc4NativeJdbcExtractor() |
| Modifier and Type | Method and Description |
|---|---|
protected java.sql.Connection |
doGetNativeConnection(java.sql.Connection con)
Not able to unwrap: return passed-in Connection.
|
java.sql.CallableStatement |
getNativeCallableStatement(java.sql.CallableStatement cs)
Not able to unwrap: return passed-in CallableStatement.
|
java.sql.PreparedStatement |
getNativePreparedStatement(java.sql.PreparedStatement ps)
Not able to unwrap: return passed-in PreparedStatement.
|
java.sql.ResultSet |
getNativeResultSet(java.sql.ResultSet rs)
Not able to unwrap: return passed-in ResultSet.
|
java.sql.Statement |
getNativeStatement(java.sql.Statement stmt)
Not able to unwrap: return passed-in Statement.
|
void |
setCallableStatementType(java.lang.Class<? extends java.sql.CallableStatement> callableStatementType)
Set the vendor's CallableStatement type, e.g.
|
void |
setConnectionType(java.lang.Class<? extends java.sql.Connection> connectionType)
Set the vendor's Connection type, e.g.
|
void |
setPreparedStatementType(java.lang.Class<? extends java.sql.PreparedStatement> preparedStatementType)
Set the vendor's PreparedStatement type, e.g.
|
void |
setResultSetType(java.lang.Class<? extends java.sql.ResultSet> resultSetType)
Set the vendor's ResultSet type, e.g.
|
void |
setStatementType(java.lang.Class<? extends java.sql.Statement> statementType)
Set the vendor's Statement type, e.g.
|
getNativeConnection, getNativeConnectionFromStatement, isNativeConnectionNecessaryForNativeCallableStatements, isNativeConnectionNecessaryForNativePreparedStatements, isNativeConnectionNecessaryForNativeStatementspublic void setConnectionType(java.lang.Class<? extends java.sql.Connection> connectionType)
oracle.jdbc.OracleConnection.public void setStatementType(java.lang.Class<? extends java.sql.Statement> statementType)
oracle.jdbc.OracleStatement.public void setPreparedStatementType(java.lang.Class<? extends java.sql.PreparedStatement> preparedStatementType)
oracle.jdbc.OraclePreparedStatement.public void setCallableStatementType(java.lang.Class<? extends java.sql.CallableStatement> callableStatementType)
oracle.jdbc.OracleCallableStatement.public void setResultSetType(java.lang.Class<? extends java.sql.ResultSet> resultSetType)
oracle.jdbc.OracleResultSet.protected java.sql.Connection doGetNativeConnection(java.sql.Connection con)
throws java.sql.SQLException
NativeJdbcExtractorAdapterdoGetNativeConnection in class NativeJdbcExtractorAdapterjava.sql.SQLExceptionpublic java.sql.Statement getNativeStatement(java.sql.Statement stmt)
throws java.sql.SQLException
NativeJdbcExtractorAdaptergetNativeStatement in interface NativeJdbcExtractorgetNativeStatement in class NativeJdbcExtractorAdapterstmt - the Statement handle, potentially wrapped by a connection pooljava.sql.SQLException - if thrown by JDBC methodspublic java.sql.PreparedStatement getNativePreparedStatement(java.sql.PreparedStatement ps)
throws java.sql.SQLException
NativeJdbcExtractorAdaptergetNativePreparedStatement in interface NativeJdbcExtractorgetNativePreparedStatement in class NativeJdbcExtractorAdapterps - the PreparedStatement handle, potentially wrapped by a connection pooljava.sql.SQLException - if thrown by JDBC methodspublic java.sql.CallableStatement getNativeCallableStatement(java.sql.CallableStatement cs)
throws java.sql.SQLException
NativeJdbcExtractorAdaptergetNativeCallableStatement in interface NativeJdbcExtractorgetNativeCallableStatement in class NativeJdbcExtractorAdaptercs - the CallableStatement handle, potentially wrapped by a connection pooljava.sql.SQLException - if thrown by JDBC methodspublic java.sql.ResultSet getNativeResultSet(java.sql.ResultSet rs)
throws java.sql.SQLException
NativeJdbcExtractorAdaptergetNativeResultSet in interface NativeJdbcExtractorgetNativeResultSet in class NativeJdbcExtractorAdapterrs - the ResultSet handle, potentially wrapped by a connection pooljava.sql.SQLException - if thrown by JDBC methods