Package org.hibernate.dialect
Class OracleEnumJdbcType
java.lang.Object
org.hibernate.dialect.OracleEnumJdbcType
- All Implemented Interfaces:
Serializable,JdbcType
- Direct Known Subclasses:
OracleOrdinalEnumJdbcType
Represents a named
enum type on Oracle 23ai+.
Hibernate does not automatically use this for enums
mapped as EnumType.STRING, and
instead this type must be explicitly requested using:
@JdbcTypeCode(SqlTypes.NAMED_ENUM)
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAuxiliaryDatabaseObjects(JavaType<?> javaType, Size columnSize, Database database, JdbcTypeIndicators context) voidaddAuxiliaryDatabaseObjects(JavaType<?> javaType, Size columnSize, Database database, TypeConfiguration typeConfiguration) <X> ValueBinder<X>Obtain a binder object capable of binding values of the given Java type to parameters of a JDBCPreparedStatement.String[]getCreateEnumTypeCommand(String name, String[] values) Used to generate the CREATE DDL command for Data Use Case Domain based on VARCHAR2 values.intA JDBC type code that identifies the SQL column type.<X> ValueExtractor<X>getExtractor(JavaType<X> javaType) A "friendly" name for use in logging<T> JdbcLiteralFormatter<T>getJdbcLiteralFormatter(JavaType<T> javaType) intThe JDBC type code used when interacting with JDBC APIs.toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.hibernate.type.descriptor.jdbc.JdbcType
appendWriteExpression, getCastType, getCheckCondition, getDdlTypeCode, getExtraCreateTableInfo, getJdbcRecommendedJavaTypeMapping, getPreferredJavaTypeClass, hasDatePart, hasTimePart, isArray, isBinary, isBoolean, isComparable, isDecimal, isDuration, isFloat, isInteger, isInterval, isLob, isLobOrLong, isNationalized, isNumber, isSmallInteger, isSpatial, isString, isStringLike, isStringLikeExcludingClob, isTemporal, registerOutParameter, registerOutParameter, wrapTopLevelSelectionExpression, wrapWriteExpression
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
OracleEnumJdbcType
public OracleEnumJdbcType()
-
-
Method Details
-
getJdbcTypeCode
public int getJdbcTypeCode()Description copied from interface:JdbcTypeThe JDBC type code used when interacting with JDBC APIs.For example, it's used when calling
PreparedStatement.setNull(int, int).- Specified by:
getJdbcTypeCodein interfaceJdbcType- Returns:
- a JDBC type code
-
getDefaultSqlTypeCode
public int getDefaultSqlTypeCode()Description copied from interface:JdbcTypeA JDBC type code that identifies the SQL column type.This value might be different from
JdbcType.getDdlTypeCode()if the actual type e.g. JSON is emulated through a type like CLOB.- Specified by:
getDefaultSqlTypeCodein interfaceJdbcType- Returns:
- a JDBC type code
-
getJdbcLiteralFormatter
Description copied from interface:JdbcTypeObtain a formatter object capable of rendering values of the given Java type as SQL literals of the type represented by this object.- Specified by:
getJdbcLiteralFormatterin interfaceJdbcType
-
getFriendlyName
Description copied from interface:JdbcTypeA "friendly" name for use in logging- Specified by:
getFriendlyNamein interfaceJdbcType
-
toString
-
getBinder
Description copied from interface:JdbcTypeObtain a binder object capable of binding values of the given Java type to parameters of a JDBCPreparedStatement. -
getExtractor
Description copied from interface:JdbcTypeObtain an extractor object capable of extracting values of the given Java type from a JDBCResultSet.- Specified by:
getExtractorin interfaceJdbcType- Parameters:
javaType- The descriptor describing the types of Java values to be extracted- Returns:
- The appropriate extractor
-
addAuxiliaryDatabaseObjects
public void addAuxiliaryDatabaseObjects(JavaType<?> javaType, Size columnSize, Database database, JdbcTypeIndicators context) Description copied from interface:JdbcType- Specified by:
addAuxiliaryDatabaseObjectsin interfaceJdbcType
-
addAuxiliaryDatabaseObjects
public void addAuxiliaryDatabaseObjects(JavaType<?> javaType, Size columnSize, Database database, TypeConfiguration typeConfiguration) - Specified by:
addAuxiliaryDatabaseObjectsin interfaceJdbcType
-
getCreateEnumTypeCommand
Used to generate the CREATE DDL command for Data Use Case Domain based on VARCHAR2 values.- Parameters:
name-values-- Returns:
- the DDL command to create that enum
-