Package org.hibernate.dialect
Class OracleOrdinalEnumJdbcType
- java.lang.Object
-
- org.hibernate.dialect.OracleEnumJdbcType
-
- org.hibernate.dialect.OracleOrdinalEnumJdbcType
-
- All Implemented Interfaces:
Serializable
,JdbcType
public class OracleOrdinalEnumJdbcType extends OracleEnumJdbcType
Represents a namedenum
type on Oracle 23ai+.Hibernate does not automatically use this for enums mapped as
EnumType.ORDINAL
, and instead this type must be explicitly requested using:@JdbcTypeCode(SqlTypes.NAMED_ORDINAL_ENUM)
-
-
Field Summary
Fields Modifier and Type Field Description static OracleOrdinalEnumJdbcType
INSTANCE
-
Constructor Summary
Constructors Constructor Description OracleOrdinalEnumJdbcType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAuxiliaryDatabaseObjects(JavaType<?> javaType, Size columnSize, Database database, JdbcTypeIndicators context)
void
addAuxiliaryDatabaseObjects(JavaType<?> javaType, Size columnSize, Database database, TypeConfiguration typeConfiguration)
<X> ValueBinder<X>
getBinder(JavaType<X> javaType)
Obtain a binder object capable of binding values of the given Java type to parameters of a JDBCPreparedStatement
.int
getDefaultSqlTypeCode()
A JDBC type code that identifies the SQL column type.<X> ValueExtractor<X>
getExtractor(JavaType<X> javaType)
int
getJdbcTypeCode()
The JDBC type code used when interacting with JDBC APIs.-
Methods inherited from class org.hibernate.dialect.OracleEnumJdbcType
getCreateEnumTypeCommand, getFriendlyName, getJdbcLiteralFormatter, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods 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 Detail
-
INSTANCE
public static final OracleOrdinalEnumJdbcType INSTANCE
-
-
Method Detail
-
getJdbcTypeCode
public int getJdbcTypeCode()
Description copied from interface:JdbcType
The JDBC type code used when interacting with JDBC APIs.For example, it's used when calling
PreparedStatement.setNull(int, int)
.- Specified by:
getJdbcTypeCode
in interfaceJdbcType
- Overrides:
getJdbcTypeCode
in classOracleEnumJdbcType
- Returns:
- a JDBC type code
-
getDefaultSqlTypeCode
public int getDefaultSqlTypeCode()
Description copied from interface:JdbcType
A 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:
getDefaultSqlTypeCode
in interfaceJdbcType
- Overrides:
getDefaultSqlTypeCode
in classOracleEnumJdbcType
- Returns:
- a JDBC type code
-
getBinder
public <X> ValueBinder<X> getBinder(JavaType<X> javaType)
Description copied from interface:JdbcType
Obtain a binder object capable of binding values of the given Java type to parameters of a JDBCPreparedStatement
.- Specified by:
getBinder
in interfaceJdbcType
- Overrides:
getBinder
in classOracleEnumJdbcType
- Parameters:
javaType
- The descriptor describing the types of Java values to be bound- Returns:
- The appropriate binder.
-
getExtractor
public <X> ValueExtractor<X> getExtractor(JavaType<X> javaType)
Description copied from interface:JdbcType
Obtain an extractor object capable of extracting values of the given Java type from a JDBCResultSet
.- Specified by:
getExtractor
in interfaceJdbcType
- Overrides:
getExtractor
in classOracleEnumJdbcType
- 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:
addAuxiliaryDatabaseObjects
in interfaceJdbcType
- Overrides:
addAuxiliaryDatabaseObjects
in classOracleEnumJdbcType
-
addAuxiliaryDatabaseObjects
public void addAuxiliaryDatabaseObjects(JavaType<?> javaType, Size columnSize, Database database, TypeConfiguration typeConfiguration)
- Specified by:
addAuxiliaryDatabaseObjects
in interfaceJdbcType
- Overrides:
addAuxiliaryDatabaseObjects
in classOracleEnumJdbcType
-
-