Class EnumJdbcType
- java.lang.Object
-
- org.hibernate.type.descriptor.jdbc.EnumJdbcType
-
- All Implemented Interfaces:
Serializable,JdbcType
- Direct Known Subclasses:
MySQLEnumJdbcType,OrdinalEnumJdbcType
public class EnumJdbcType extends Object implements JdbcType
Represents anenumtype for databases like MySQL and H2.Hibernate will automatically use this for enums mapped as
EnumType.STRING.
-
-
Field Summary
Fields Modifier and Type Field Description static EnumJdbcTypeINSTANCE
-
Constructor Summary
Constructors Constructor Description EnumJdbcType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <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.intgetDefaultSqlTypeCode()A JDBC type code that identifies the SQL column type.<X> ValueExtractor<X>getExtractor(JavaType<X> javaType)StringgetFriendlyName()A "friendly" name for use in logging<T> JdbcLiteralFormatter<T>getJdbcLiteralFormatter(JavaType<T> javaType)intgetJdbcTypeCode()The JDBC type code used when interacting with JDBC APIs.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.hibernate.type.descriptor.jdbc.JdbcType
addAuxiliaryDatabaseObjects, addAuxiliaryDatabaseObjects, 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 EnumJdbcType INSTANCE
-
-
Method Detail
-
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
public <T> JdbcLiteralFormatter<T> getJdbcLiteralFormatter(JavaType<T> javaType)
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
public String getFriendlyName()
Description copied from interface:JdbcTypeA "friendly" name for use in logging- Specified by:
getFriendlyNamein interfaceJdbcType
-
getBinder
public <X> ValueBinder<X> getBinder(JavaType<X> javaType)
Description copied from interface:JdbcTypeObtain a binder object capable of binding values of the given Java type to parameters of a JDBCPreparedStatement.
-
getExtractor
public <X> ValueExtractor<X> getExtractor(JavaType<X> javaType)
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
-
-