org.springframework.jdbc.support.lob

Class AbstractLobHandler

  • java.lang.Object
    • org.springframework.jdbc.support.lob.AbstractLobHandler
  • All Implemented Interfaces:
    LobHandler
    Direct Known Subclasses:
    DefaultLobHandler


    public abstract class AbstractLobHandler
    extends java.lang.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 Detail

      • AbstractLobHandler

        public AbstractLobHandler()
    • Method Detail

      • getBlobAsBytes

        @Nullable
        public byte[] getBlobAsBytes(java.sql.ResultSet rs,
                                               java.lang.String columnName)
                                        throws java.sql.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:
        java.sql.SQLException - if thrown by JDBC methods
        See Also:
        ResultSet.getBytes(int)
      • getBlobAsBinaryStream

        @Nullable
        public java.io.InputStream getBlobAsBinaryStream(java.sql.ResultSet rs,
                                                                   java.lang.String columnName)
                                                            throws java.sql.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:
        java.sql.SQLException - if thrown by JDBC methods
        See Also:
        ResultSet.getBinaryStream(int)
      • getClobAsString

        @Nullable
        public java.lang.String getClobAsString(java.sql.ResultSet rs,
                                                          java.lang.String columnName)
                                                   throws java.sql.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:
        java.sql.SQLException - if thrown by JDBC methods
        See Also:
        ResultSet.getString(int)
      • getClobAsAsciiStream

        @Nullable
        public java.io.InputStream getClobAsAsciiStream(java.sql.ResultSet rs,
                                                                  java.lang.String columnName)
                                                           throws java.sql.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:
        java.sql.SQLException - if thrown by JDBC methods
        See Also:
        ResultSet.getAsciiStream(int)
      • getClobAsCharacterStream

        public java.io.Reader getClobAsCharacterStream(java.sql.ResultSet rs,
                                                       java.lang.String columnName)
                                                throws java.sql.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:
        java.sql.SQLException - if thrown by JDBC methods
        See Also:
        ResultSet.getCharacterStream(int)