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 Connection |
doGetNativeConnection(Connection con)
Not able to unwrap: return passed-in Connection.
|
CallableStatement |
getNativeCallableStatement(CallableStatement cs)
Not able to unwrap: return passed-in CallableStatement.
|
PreparedStatement |
getNativePreparedStatement(PreparedStatement ps)
Not able to unwrap: return passed-in PreparedStatement.
|
ResultSet |
getNativeResultSet(ResultSet rs)
Not able to unwrap: return passed-in ResultSet.
|
Statement |
getNativeStatement(Statement stmt)
Not able to unwrap: return passed-in Statement.
|
void |
setCallableStatementType(Class<? extends CallableStatement> callableStatementType)
Set the vendor's CallableStatement type, e.g.
|
void |
setConnectionType(Class<? extends Connection> connectionType)
Set the vendor's Connection type, e.g.
|
void |
setPreparedStatementType(Class<? extends PreparedStatement> preparedStatementType)
Set the vendor's PreparedStatement type, e.g.
|
void |
setResultSetType(Class<? extends ResultSet> resultSetType)
Set the vendor's ResultSet type, e.g.
|
void |
setStatementType(Class<? extends Statement> statementType)
Set the vendor's Statement type, e.g.
|
getNativeConnection, getNativeConnectionFromStatement, isNativeConnectionNecessaryForNativeCallableStatements, isNativeConnectionNecessaryForNativePreparedStatements, isNativeConnectionNecessaryForNativeStatements
public void setConnectionType(Class<? extends Connection> connectionType)
oracle.jdbc.OracleConnection
.public void setStatementType(Class<? extends Statement> statementType)
oracle.jdbc.OracleStatement
.public void setPreparedStatementType(Class<? extends PreparedStatement> preparedStatementType)
oracle.jdbc.OraclePreparedStatement
.public void setCallableStatementType(Class<? extends CallableStatement> callableStatementType)
oracle.jdbc.OracleCallableStatement
.public void setResultSetType(Class<? extends ResultSet> resultSetType)
oracle.jdbc.OracleResultSet
.protected Connection doGetNativeConnection(Connection con) throws SQLException
NativeJdbcExtractorAdapter
doGetNativeConnection
in class NativeJdbcExtractorAdapter
SQLException
public Statement getNativeStatement(Statement stmt) throws SQLException
NativeJdbcExtractorAdapter
getNativeStatement
in interface NativeJdbcExtractor
getNativeStatement
in class NativeJdbcExtractorAdapter
stmt
- the Statement handle, potentially wrapped by a connection poolSQLException
- if thrown by JDBC methodspublic PreparedStatement getNativePreparedStatement(PreparedStatement ps) throws SQLException
NativeJdbcExtractorAdapter
getNativePreparedStatement
in interface NativeJdbcExtractor
getNativePreparedStatement
in class NativeJdbcExtractorAdapter
ps
- the PreparedStatement handle, potentially wrapped by a connection poolSQLException
- if thrown by JDBC methodspublic CallableStatement getNativeCallableStatement(CallableStatement cs) throws SQLException
NativeJdbcExtractorAdapter
getNativeCallableStatement
in interface NativeJdbcExtractor
getNativeCallableStatement
in class NativeJdbcExtractorAdapter
cs
- the CallableStatement handle, potentially wrapped by a connection poolSQLException
- if thrown by JDBC methodspublic ResultSet getNativeResultSet(ResultSet rs) throws SQLException
NativeJdbcExtractorAdapter
getNativeResultSet
in interface NativeJdbcExtractor
getNativeResultSet
in class NativeJdbcExtractorAdapter
rs
- the ResultSet handle, potentially wrapped by a connection poolSQLException
- if thrown by JDBC methods