org.springframework.jdbc.support.lob

## Class AbstractLobHandler

- java.lang.Object
- - org.springframework.jdbc.support.lob.AbstractLobHandler

- All Implemented Interfaces:
    LobHandler
  Direct Known Subclasses:
    DefaultLobHandler, OracleLobHandler

      public abstract class AbstractLobHandler
      extends Object
      implements LobHandler

  Abstract base class for `LobHandler` implementations.

  Implements all accessor methods for column names through a column lookup and delegating to the corresponding accessor that takes a column index.

  Since:
    1.2
  Author:
    Juergen Hoeller
  See Also:
    `ResultSet.findColumn(java.lang.String)`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractLobHandler()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `InputStream` | `getBlobAsBinaryStream(ResultSet rs, String columnName)` Retrieve the given column as binary stream from the given ResultSet.
    `byte[]` | `getBlobAsBytes(ResultSet rs, String columnName)` Retrieve the given column as bytes from the given ResultSet.
    `InputStream` | `getClobAsAsciiStream(ResultSet rs, String columnName)` Retrieve the given column as ASCII stream from the given ResultSet.
    `Reader` | `getClobAsCharacterStream(ResultSet rs, String columnName)` Retrieve the given column as character stream from the given ResultSet.
    `String` | `getClobAsString(ResultSet rs, String columnName)` Retrieve the given column as String from the given ResultSet.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.springframework.jdbc.support.lob.LobHandler

      `getBlobAsBinaryStream, getBlobAsBytes, getClobAsAsciiStream, getClobAsCharacterStream, getClobAsString, getLobCreator`

- - ### Constructor Detail

    - #### AbstractLobHandler

          public AbstractLobHandler()

  - ### Method Detail

    - #### getBlobAsBytes

          public byte[] getBlobAsBytes(ResultSet rs,
                                       String columnName)
                                throws SQLException

      Description copied from interface: `LobHandler`
      Retrieve the given column as bytes from the given ResultSet. Might simply invoke `ResultSet.getBytes` or work with `ResultSet.getBlob`, depending on the database and driver.
      Specified by:
        `getBlobAsBytes` in interface `LobHandler`
      Parameters:
        `rs` - the ResultSet to retrieve the content from
        `columnName` - the column name to use
      Returns:
        the content as byte array, or `null` in case of SQL NULL
      Throws:
        `SQLException` - if thrown by JDBC methods
      See Also:
        `ResultSet.getBytes(int)`

    - #### getBlobAsBinaryStream

          public InputStream getBlobAsBinaryStream(ResultSet rs,
                                                   String columnName)
                                            throws SQLException

      Description copied from interface: `LobHandler`
      Retrieve the given column as binary stream from the given ResultSet. Might simply invoke `ResultSet.getBinaryStream` or work with `ResultSet.getBlob`, depending on the database and driver.
      Specified by:
        `getBlobAsBinaryStream` in interface `LobHandler`
      Parameters:
        `rs` - the ResultSet to retrieve the content from
        `columnName` - the column name to use
      Returns:
        the content as binary stream, or `null` in case of SQL NULL
      Throws:
        `SQLException` - if thrown by JDBC methods
      See Also:
        `ResultSet.getBinaryStream(int)`

    - #### getClobAsString

          public String getClobAsString(ResultSet rs,
                                        String columnName)
                                 throws SQLException

      Description copied from interface: `LobHandler`
      Retrieve the given column as String from the given ResultSet. Might simply invoke `ResultSet.getString` or work with `ResultSet.getClob`, depending on the database and driver.
      Specified by:
        `getClobAsString` in interface `LobHandler`
      Parameters:
        `rs` - the ResultSet to retrieve the content from
        `columnName` - the column name to use
      Returns:
        the content as String, or `null` in case of SQL NULL
      Throws:
        `SQLException` - if thrown by JDBC methods
      See Also:
        `ResultSet.getString(int)`

    - #### getClobAsAsciiStream

          public InputStream getClobAsAsciiStream(ResultSet rs,
                                                  String columnName)
                                           throws SQLException

      Description copied from interface: `LobHandler`
      Retrieve the given column as ASCII stream from the given ResultSet. Might simply invoke `ResultSet.getAsciiStream` or work with `ResultSet.getClob`, depending on the database and driver.
      Specified by:
        `getClobAsAsciiStream` in interface `LobHandler`
      Parameters:
        `rs` - the ResultSet to retrieve the content from
        `columnName` - the column name to use
      Returns:
        the content as ASCII stream, or `null` in case of SQL NULL
      Throws:
        `SQLException` - if thrown by JDBC methods
      See Also:
        `ResultSet.getAsciiStream(int)`

    - #### getClobAsCharacterStream

          public Reader getClobAsCharacterStream(ResultSet rs,
                                                 String columnName)
                                          throws SQLException

      Description copied from interface: `LobHandler`
      Retrieve the given column as character stream from the given ResultSet. Might simply invoke `ResultSet.getCharacterStream` or work with `ResultSet.getClob`, depending on the database and driver.
      Specified by:
        `getClobAsCharacterStream` in interface `LobHandler`
      Parameters:
        `rs` - the ResultSet to retrieve the content from
        `columnName` - the column name to use
      Returns:
        the content as character stream
      Throws:
        `SQLException` - if thrown by JDBC methods
      See Also:
        `ResultSet.getCharacterStream(int)`