Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.springframework.jdbc.support.nativejdbc
Class JBossNativeJdbcExtractor

    java.lang.Object
      org.springframework.jdbc.support.nativejdbc.NativeJdbcExtractorAdapter
          org.springframework.jdbc.support.nativejdbc.JBossNativeJdbcExtractor

All Implemented Interfaces:
  NativeJdbcExtractor

    public class JBossNativeJdbcExtractor

extends NativeJdbcExtractorAdapter

Implementation of the `NativeJdbcExtractor` interface for JBoss, supporting JBoss Application Server 3.2.4+. As of Spring 3.1.1, it also supports JBoss 7.

Returns the underlying native Connection, Statement, etc to application code instead of JBoss' wrapper implementations. The returned JDBC classes can then safely be cast, e.g. to `oracle.jdbc.OracleConnection`.

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

Since:
  03.01.2004
Author:
  Juergen Hoeller
See Also:
  `org.jboss.resource.adapter.jdbc.WrappedConnection#getUnderlyingConnection`, `org.jboss.resource.adapter.jdbc.WrappedStatement#getUnderlyingStatement`, `org.jboss.resource.adapter.jdbc.WrappedResultSet#getUnderlyingResultSet`

Constructor Summary
`JBossNativeJdbcExtractor()` This constructor retrieves JBoss JDBC wrapper classes, so we can get the underlying vendor connection using reflection.

Method Summary
`protected Connection` | `doGetNativeConnection(Connection con)` Retrieve the Connection via JBoss' `getUnderlyingConnection` method.
`CallableStatement` | `getNativeCallableStatement(CallableStatement cs)` Retrieve the Connection via JBoss' `getUnderlyingStatement` method.
`PreparedStatement` | `getNativePreparedStatement(PreparedStatement ps)` Retrieve the Connection via JBoss' `getUnderlyingStatement` method.
`ResultSet` | `getNativeResultSet(ResultSet rs)` Retrieve the Connection via JBoss' `getUnderlyingResultSet` method.
`Statement` | `getNativeStatement(Statement stmt)` Retrieve the Connection via JBoss' `getUnderlyingStatement` method.

Methods inherited from class org.springframework.jdbc.support.nativejdbc.NativeJdbcExtractorAdapter
`getNativeConnection, getNativeConnectionFromStatement, isNativeConnectionNecessaryForNativeCallableStatements, isNativeConnectionNecessaryForNativePreparedStatements, isNativeConnectionNecessaryForNativeStatements`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JBossNativeJdbcExtractor

    public JBossNativeJdbcExtractor()

  This constructor retrieves JBoss JDBC wrapper classes, so we can get the underlying vendor connection using reflection.

Method Detail

### doGetNativeConnection

    protected Connection doGetNativeConnection(Connection con)
                                        throws SQLException

  Retrieve the Connection via JBoss' `getUnderlyingConnection` method.

  Overrides:
    `doGetNativeConnection` in class `NativeJdbcExtractorAdapter`
  Throws:
    `SQLException`

### getNativeStatement

    public Statement getNativeStatement(Statement stmt)
                                 throws SQLException

  Retrieve the Connection via JBoss' `getUnderlyingStatement` method.

  Specified by:
    `getNativeStatement` in interface `NativeJdbcExtractor`
  Overrides:
    `getNativeStatement` in class `NativeJdbcExtractorAdapter`
  Parameters:
    `stmt` - the Statement handle, potentially wrapped by a connection pool
  Returns:
    the underlying native JDBC Statement, if possible; else, the original Statement
  Throws:
    `SQLException` - if thrown by JDBC methods

### getNativePreparedStatement

    public PreparedStatement getNativePreparedStatement(PreparedStatement ps)
                                                 throws SQLException

  Retrieve the Connection via JBoss' `getUnderlyingStatement` method.

  Specified by:
    `getNativePreparedStatement` in interface `NativeJdbcExtractor`
  Overrides:
    `getNativePreparedStatement` in class `NativeJdbcExtractorAdapter`
  Parameters:
    `ps` - the PreparedStatement handle, potentially wrapped by a connection pool
  Returns:
    the underlying native JDBC PreparedStatement, if possible; else, the original PreparedStatement
  Throws:
    `SQLException` - if thrown by JDBC methods

### getNativeCallableStatement

    public CallableStatement getNativeCallableStatement(CallableStatement cs)
                                                 throws SQLException

  Retrieve the Connection via JBoss' `getUnderlyingStatement` method.

  Specified by:
    `getNativeCallableStatement` in interface `NativeJdbcExtractor`
  Overrides:
    `getNativeCallableStatement` in class `NativeJdbcExtractorAdapter`
  Parameters:
    `cs` - the CallableStatement handle, potentially wrapped by a connection pool
  Returns:
    the underlying native JDBC CallableStatement, if possible; else, the original CallableStatement
  Throws:
    `SQLException` - if thrown by JDBC methods

### getNativeResultSet

    public ResultSet getNativeResultSet(ResultSet rs)
                                 throws SQLException

  Retrieve the Connection via JBoss' `getUnderlyingResultSet` method.

  Specified by:
    `getNativeResultSet` in interface `NativeJdbcExtractor`
  Overrides:
    `getNativeResultSet` in class `NativeJdbcExtractorAdapter`
  Parameters:
    `rs` - the ResultSet handle, potentially wrapped by a connection pool
  Returns:
    the underlying native JDBC ResultSet, if possible; else, the original ResultSet
  Throws:
    `SQLException` - if thrown by JDBC methods

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD