Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.bea.p13n.util.jdbc
Class JdbcHelper

    java.lang.Object
      com.bea.p13n.util.jdbc.JdbcHelper

public class JdbcHelper
extends Object

See also the Database and DatabaseFactory classes.

Method Summary
`static void` | `close(Connection con)` Close a connection, ignoring any errors.
`static void` | `close(ResultSet rs)` Close a result set, ignoring any errors.
`static void` | `close(ResultSet rs, Statement stmt, Connection con)` Close a connection, statement and resultset, ignoring errors.
`static void` | `close(Statement stmt)` Close a statement, ignoring any errors.
`static void` | `commitConnection(Connection con)` Deprecated. in favor of Database.commitConnection()
`static String` | `getClob(ResultSet rs, int index)` Deprecated. in favor of Database and DatabaseFactory
`static Clob` | `getClobLocator(Connection con, String tableName, String clobColumnName, String whereClause)` Deprecated. in favor of Database and DatabaseFactory
`static Connection` | `getConnection(DataSource src, int retries)` Deprecated. Use DataSource.getConnection(), set retries and waitTime by configuring the Pool
`static Connection` | `getConnection(DataSource src, int retries, long waitTime)` Deprecated. Use DataSource.getConnection(), set retries and waitTime by configuring the Pool
`static String` | `getEmptyClobInitializer()` Deprecated. in favor of Database and DatabaseFactory
`static JdbcHelper` | `getInstance()`
`static void` | `resumeTransaction(Transaction suspendedTransaction)` Resumes the suspended transaction if it is not null.
`static boolean` | `setClob(PreparedStatement stmt, int index, Clob clob, String str)` Deprecated. in favor of Database.setClob()
`static void` | `setClob(PreparedStatement stmt, int index, String str)` Deprecated. in favor of Database.setClob()
`static void` | `setJdbcHelperDelegate(String className)` Deprecated. in favor of DatabaseFactory
`static String` | `showIsolationLevel(Connection connection)` Show transaction isolation level of connection
`static UserTransaction` | `startTransaction()` Start a new transaction
`static Transaction` | `suspendTransaction()` Suspend any current transaction (unless suspendTransaction is false).

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

Method Detail

### close

    public static void close(Connection con)

  Close a connection, ignoring any errors.

  Parameters:
    `con` - The Connection object to be closed.

### close

    public static void close(ResultSet rs)

  Close a result set, ignoring any errors.

  Parameters:
    `rs` - The ResultSet object to be closed.

### close

    public static void close(ResultSet rs,
                             Statement stmt,
                             Connection con)

  Close a connection, statement and resultset, ignoring errors.

  Parameters:
    `rs` - The ResultSet object to be closed.
    `stmt` - The Statement object to be closed.
    `con` - The Connection object to be closed.

### close

    public static void close(Statement stmt)

  Close a statement, ignoring any errors.

  Parameters:
    `stmt` - The Statement object to be closed.

### commitConnection

    public static void commitConnection(Connection con)
                                 throws SQLException

  Deprecated. in favor of Database.commitConnection()

  Commits the java.sql.Connection that you have been using for CLOB operations. A CLOB becomes inactive as soon as a transaction is committed. You must have auto-commit=false on your connection if you need to have a CLOB available across multiple SQL statements.

  The delegate may implement this as a no-op method if it is illegal to do a Connection.commit() for the driver (e.g., jDriver for Oracle XA)

  If there is no delegate, this method does a Connection.commit()

  Parameters:
    `con` - the Connection
  Throws:
    `SQLException` - on an error

### getClob

    public static String getClob(ResultSet rs,
                                 int index)
                          throws SQLException

  Deprecated. in favor of Database and DatabaseFactory

  Get the value of a CLOB column as a string.

  This method will only return the value of the CLOB in the current row of the ResultSet. This method does not increment the ResultSet cursor. You must use ResultSet.next() to increment the cursor before calling this method. This allows the method to be used to process multi-row ResultSets.

  Parameters:
    `rs` - the result set.
    `index` - the column index in the result set.
  Returns:
    the column as a string.
  Throws:
    `SQLException` - thrown on an error.

### getClobLocator

    public static Clob getClobLocator(Connection con,
                                      String tableName,
                                      String clobColumnName,
                                      String whereClause)
                               throws SQLException

  Deprecated. in favor of Database and DatabaseFactory

  Retrieve the LOB locator for a CLOB. The method creates a PreparedStatement from the specified parameters and gets the LOB locator from the ResultSet.

  This method only returns a single CLOB locator. If the WHERE clause results in mutiple rows, only the CLOB from the first row is returned.

  If no JdbcHelperDelegate is specified in application-config.xml then this method will return null.

  WARNING: if using a delegate to stream data to a CLOB, then you should use Connection.setAutoCommit(false) before calling this method. This will make the CLOB available across multiple SQL statements.

  Parameters:
    `con` - the database connection
    `tableName` - the name of the database table
    `clobColumnName` - the name of the column holding the CLOB
    `whereClause` - the where clause (without WHERE keyword)
  Returns:
    a CLOB locator, return null if the ResultSet is empty, return null if no JdbcHelperDelegate is specified in application-config.xml
  Throws:
    `SQLException` - on an error

### getConnection

    public static Connection getConnection(DataSource src,
                                           int retries)
                                    throws SQLException

  Deprecated. Use DataSource.getConnection(), set retries and waitTime by configuring the Pool

  Get a connection from a DataSource.

  This method no longer honors the retry parameter; it will use the 'Connection Reserve Timeout' parameter set on the JdbcConnectionPool cia the WLS console settings.

  Parameters:
    `src` - the data source.
    `retries` - No longer used - the settings on the pool are now used
  Returns:
    a connection from the data source on success.
  Throws:
    `SQLException` - thrown on an error getting a connection.

### getConnection

    public static Connection getConnection(DataSource src,
                                           int retries,
                                           long waitTime)
                                    throws SQLException

  Deprecated. Use DataSource.getConnection(), set retries and waitTime by configuring the Pool

  Get a connection from a DataSource.

  This method no longer honors the retry parameter; it will use the 'Connection Reserve Timeout' parameter set on the JdbcConnectionPool via the WLS console settings.

  Parameters:
    `src` - the data source.
    `retries` - No longer used - the settings on the pool are now used
    `waitTime` - No longer used - the settings on the pool are now used
  Returns:
    a connection from the data source on success.
  Throws:
    `SQLException` - thrown on an error getting a connection.

### getEmptyClobInitializer

    public static String getEmptyClobInitializer()
                                          throws SQLException

  Deprecated. in favor of Database and DatabaseFactory

  Return the database specific keyword that must be used when inserting a row with an empty CLOB. This method uses the JdbcHelperDelegate. If no JdbcHelperDelegate is specified in application-config.xml then this method will return the empty String.

  For example, the method returns EMPTY_CLOB() when an Oracle delegate is used.

  Returns:
    keyword required to insert an empty CLOB, return empty String if not supported, return empty String if no JdbcHelperDelegate is specified in application-config.xml
  Throws:
    `SQLException` - on an error

### getInstance

    public static JdbcHelper getInstance()

### resumeTransaction

    public static void resumeTransaction(Transaction suspendedTransaction)

  Resumes the suspended transaction if it is not null.

### setClob

    public static boolean setClob(PreparedStatement stmt,
                                  int index,
                                  Clob clob,
                                  String str)
                           throws SQLException

  Deprecated. in favor of Database.setClob()

  If there is a delegate, this method uses JdbcHelperDelegate.writeClobData() If this is done, then the PreparedStatement does not need to be used and the return value, executeRequired, is false. The CLOB should be first located with getClobLocator() If there is no delegate, then this method ignores the Clob argument and sets the value of the String into the CLOB placeholder in the PreparedStatement with setClob(PreparedStatement stmt, int index, String str) and returns executeRequired = true.

  WARNING: if using a delegate to stream data to a CLOB, then you should have used Connection.setAutoCommit(false) before calling the CLOB locator method that provided the Clob you are using in this method call. This will make the CLOB available across multiple SQL statements.

  Parameters:
    `stmt` - the prepared statement.
    `index` - the column index.
    `clob` - the CLOB locator (ignored if no delegate).
    `str` - the String to be set in the CLOB (if delegate) or in the PreparedStatement (if no delegate)
  Returns:
    boolean executeRequired. If false then a delegate was used to directly set the CLOB in the database without using the PreparedStatement. If true then no delegate was used, or the delegate set the Clob value on the statement and the PreparedStatement must be executed to update the database.
  Throws:
    `SQLException` - thrown on an error.
  See Also:
    `JdbcHelperDelegate.writeClobData(PreparedStatement,int,Clob,String)`, `getClobLocator(Connection,String,String,String)`, `setClob(PreparedStatement,int,String)`

### setClob

    public static void setClob(PreparedStatement stmt,
                               int index,
                               String str)
                        throws SQLException

  Deprecated. in favor of Database.setClob()

  Set the value of a CLOB column with a string.

  Parameters:
    `stmt` - the prepared statement.
    `index` - the column index.
    `str` - the CLOB string.
  Throws:
    `SQLException` - thrown on an error.

### setJdbcHelperDelegate

    public static void setJdbcHelperDelegate(String className)

  Deprecated. in favor of DatabaseFactory

### showIsolationLevel

    public static String showIsolationLevel(Connection connection)
                                     throws SQLException

  Show transaction isolation level of connection

  Throws:
    `SQLException`

### startTransaction

    public static UserTransaction startTransaction()
                                            throws SQLException

  Start a new transaction

  Throws:
    `SQLException`

### suspendTransaction

    public static Transaction suspendTransaction()

  Suspend any current transaction (unless suspendTransaction is false).

  Returns:
    the suspended transaction (or null if none)

Overview | Package | Class | Tree | Deprecated | Index | Help
| © 2004 BEA Systems, Inc.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2004 BEA Systems, Inc. All Rights Reserved