Class EnumJdbcType
- java.lang.Object
-
- org.hibernate.type.descriptor.jdbc.EnumJdbcType
-
- All Implemented Interfaces:
Serializable
,JdbcType
- Direct Known Subclasses:
MySQLEnumJdbcType
public class EnumJdbcType extends Object implements JdbcType
Represents anenum
type 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 EnumJdbcType
INSTANCE
-
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
.int
getDefaultSqlTypeCode()
A JDBC type code that identifies the SQL column type.<X> ValueExtractor<X>
getExtractor(JavaType<X> javaType)
String
getFriendlyName()
A "friendly" name for use in logging<T> JdbcLiteralFormatter<T>
getJdbcLiteralFormatter(JavaType<T> javaType)
int
getJdbcTypeCode()
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, appendWriteExpression, getCastType, getCheckCondition, getDdlTypeCode, getExtraCreateTableInfo, getJdbcRecommendedJavaTypeMapping, getPreferredJavaTypeClass, isBinary, isDecimal, isDuration, isFloat, isInteger, isInterval, isLob, isLobOrLong, isNationalized, isNumber, isString, isStringLike, isTemporal, registerOutParameter, registerOutParameter, wrapTopLevelSelectionExpression, wrapWriteExpression
-
-
-
-
Field Detail
-
INSTANCE
public static final EnumJdbcType 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
- 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
- Returns:
- a JDBC type code
-
getJdbcLiteralFormatter
public <T> JdbcLiteralFormatter<T> getJdbcLiteralFormatter(JavaType<T> javaType)
Description copied from interface:JdbcType
Obtain a formatter object capable of rendering values of the given Java type as SQL literals of the type represented by this object.- Specified by:
getJdbcLiteralFormatter
in interfaceJdbcType
-
getFriendlyName
public String getFriendlyName()
Description copied from interface:JdbcType
A "friendly" name for use in logging- Specified by:
getFriendlyName
in interfaceJdbcType
-
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
.
-
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
- Parameters:
javaType
- The descriptor describing the types of Java values to be extracted- Returns:
- The appropriate extractor
-
-