org.springframework.jdbc.support.nativejdbc
Class CommonsDbcpNativeJdbcExtractor

java.lang.Object
  extended byorg.springframework.jdbc.support.nativejdbc.NativeJdbcExtractorAdapter
      extended byorg.springframework.jdbc.support.nativejdbc.CommonsDbcpNativeJdbcExtractor
All Implemented Interfaces:
NativeJdbcExtractor

public class CommonsDbcpNativeJdbcExtractor
extends NativeJdbcExtractorAdapter

Implementation of the NativeJdbcExtractor interface for the Jakarta Commons DBCP connection pool. Returns the underlying native Connection, Statement, ResultSet etc to application code instead of DBCP's wrapper implementations. The returned JDBC classes can then safely be cast, e.g. to OracleResultSet.

This NativeJdbcExtractor can be set just to allow working with a Commons DBCP DataSource: If a given object is not a Commons DBCP wrapper, it will be returned as-is.

Note: Before Commons DBCP 1.1, DelegatingCallableStatement and DelegatingResultSet have not offered any means to access underlying delegates. Therefore, getNativeCallableStatement and getNativeResultSet will just work with DBCP 1.1. But getNativeResultSet will not be invoked by JdbcTemplate for a wrapped ResultSet anyway, because getNativeStatement/getNativePreparedStatement will already have returned the underlying delegate before.

Since:
25.08.2003
Author:
Juergen Hoeller

Constructor Summary
CommonsDbcpNativeJdbcExtractor()
           
 
Method Summary
 java.sql.CallableStatement getNativeCallableStatement(java.sql.CallableStatement cs)
          Not able to unwrap: return passed-in CallableStatement.
 java.sql.Connection getNativeConnection(java.sql.Connection con)
          Not able to unwrap: return passed-in Connection.
 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.
 
Methods inherited from class org.springframework.jdbc.support.nativejdbc.NativeJdbcExtractorAdapter
getNativeConnectionFromStatement, isNativeConnectionNecessaryForNativeCallableStatements, isNativeConnectionNecessaryForNativePreparedStatements, isNativeConnectionNecessaryForNativeStatements
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CommonsDbcpNativeJdbcExtractor

public CommonsDbcpNativeJdbcExtractor()
Method Detail

getNativeConnection

public java.sql.Connection getNativeConnection(java.sql.Connection con)
                                        throws java.sql.SQLException
Description copied from class: NativeJdbcExtractorAdapter
Not able to unwrap: return passed-in Connection.

Specified by:
getNativeConnection in interface NativeJdbcExtractor
Overrides:
getNativeConnection in class NativeJdbcExtractorAdapter
Throws:
java.sql.SQLException

getNativeStatement

public java.sql.Statement getNativeStatement(java.sql.Statement stmt)
                                      throws java.sql.SQLException
Description copied from class: NativeJdbcExtractorAdapter
Not able to unwrap: return passed-in Statement.

Specified by:
getNativeStatement in interface NativeJdbcExtractor
Overrides:
getNativeStatement in class NativeJdbcExtractorAdapter
Throws:
java.sql.SQLException

getNativePreparedStatement

public java.sql.PreparedStatement getNativePreparedStatement(java.sql.PreparedStatement ps)
                                                      throws java.sql.SQLException
Description copied from class: NativeJdbcExtractorAdapter
Not able to unwrap: return passed-in PreparedStatement.

Specified by:
getNativePreparedStatement in interface NativeJdbcExtractor
Overrides:
getNativePreparedStatement in class NativeJdbcExtractorAdapter
Throws:
java.sql.SQLException

getNativeCallableStatement

public java.sql.CallableStatement getNativeCallableStatement(java.sql.CallableStatement cs)
                                                      throws java.sql.SQLException
Description copied from class: NativeJdbcExtractorAdapter
Not able to unwrap: return passed-in CallableStatement.

Specified by:
getNativeCallableStatement in interface NativeJdbcExtractor
Overrides:
getNativeCallableStatement in class NativeJdbcExtractorAdapter
Throws:
java.sql.SQLException

getNativeResultSet

public java.sql.ResultSet getNativeResultSet(java.sql.ResultSet rs)
                                      throws java.sql.SQLException
Description copied from class: NativeJdbcExtractorAdapter
Not able to unwrap: return passed-in ResultSet.

Specified by:
getNativeResultSet in interface NativeJdbcExtractor
Overrides:
getNativeResultSet in class NativeJdbcExtractorAdapter
Throws:
java.sql.SQLException


Copyright (C) 2003-2004 The Spring Framework Project.