Interface LobSupport

All Known Implementing Classes:
DelegatingLobSupport

@SPI({USE,IMPLEMENT,SUPPLY}) public interface LobSupport

Defines the database and driver policy for LOB creation, binding, materialization, type classification, mutation ordering, and VALUE LOB DDL.

Implementations must be stable and thread-safe. Do not retain JDBC metadata or another call-scoped object passed to an operation.

Since:
8.0
See Also:
  • Method Details

    • supportsJdbcConnectionLobCreation

      default boolean supportsJdbcConnectionLobCreation(@Nullable DatabaseMetaData databaseMetaData)
      Determine whether JDBC Connection LOB factories may be used. Accept null metadata and do not retain it.
    • useInputStreamToInsertBlob

      default boolean useInputStreamToInsertBlob()
      Whether LOB values are bound using stream operations.
    • useConnectionToCreateLob

      default boolean useConnectionToCreateLob()
      Whether LOB locators must be created using JDBC Connection factories.
    • supportsMaterializedLobAccess

      default boolean supportsMaterializedLobAccess()
      Whether the driver supports materialized byte and String LOB access.
    • useMaterializedLobWhenCapacityExceeded

      default boolean useMaterializedLobWhenCapacityExceeded()
      Whether over-capacity varying mappings become materialized LOB mappings.
    • forceLobAsLastValue

      default boolean forceLobAsLastValue()
      Whether LOB assignments must occur last in insert and update statements.
    • isLobType

      default boolean isLobType(int sqlTypeCode)
      Classify a JDBC or Hibernate SQL type code as a locator-oriented LOB.
    • getValueLobFragmentForExtraCreateTableInfo

      @Nullable default String getValueLobFragmentForExtraCreateTableInfo(String columnName)
      Render the complete column-specific VALUE LOB CREATE TABLE fragment, or return null when VALUE LOB DDL is unsupported.