Class JsonJdbcType
java.lang.Object
org.hibernate.type.descriptor.jdbc.JsonJdbcType
- All Implemented Interfaces:
Serializable,AggregateJdbcType,JdbcType
- Direct Known Subclasses:
AbstractPostgreSQLJsonPGObjectType,H2FormatJsonJdbcType,H2JsonJdbcType,JsonAsStringJdbcType,MySQLCastingJsonJdbcType,PostgreSQLCastingJsonJdbcType
Specialized type mapping for
JSON and the JSON SQL data type.- Author:
- Christian Beikov
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJsonJdbcType(EmbeddableMappingType embeddableMappingType) -
Method Summary
Modifier and TypeMethodDescriptioncreateJdbcValue(Object domainValue, WrapperOptions options) Object[]extractJdbcValues(Object rawJdbcValue, WrapperOptions options) protected <X> XfromString(String string, JavaType<X> javaType, WrapperOptions options) <X> ValueBinder<X>Obtain a binder object capable of binding values of the given Java type to parameters of a JDBCPreparedStatement.intA JDBC type code that identifies the SQL column type.<X> ValueExtractor<X>getExtractor(JavaType<X> javaType) <T> JdbcLiteralFormatter<T>getJdbcLiteralFormatter(JavaType<T> javaType) intThe JDBC type code used when interacting with JDBC APIs.resolveAggregateJdbcType(EmbeddableMappingType mappingType, String sqlType, RuntimeModelCreationContext creationContext) toString()protected <X> StringtoString(X value, JavaType<X> javaType, WrapperOptions options) 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
addAuxiliaryDatabaseObjects, addAuxiliaryDatabaseObjects, appendWriteExpression, getCastType, getCheckCondition, getDdlTypeCode, getExtraCreateTableInfo, getFriendlyName, 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
Singleton access
-
-
Constructor Details
-
JsonJdbcType
-
-
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
-
toString
-
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
-
resolveAggregateJdbcType
public AggregateJdbcType resolveAggregateJdbcType(EmbeddableMappingType mappingType, String sqlType, RuntimeModelCreationContext creationContext) - Specified by:
resolveAggregateJdbcTypein interfaceAggregateJdbcType
-
getEmbeddableMappingType
- Specified by:
getEmbeddableMappingTypein interfaceAggregateJdbcType
-
fromString
protected <X> X fromString(String string, JavaType<X> javaType, WrapperOptions options) throws SQLException - Throws:
SQLException
-
createJdbcValue
- Specified by:
createJdbcValuein interfaceAggregateJdbcType- Throws:
SQLException
-
extractJdbcValues
- Specified by:
extractJdbcValuesin interfaceAggregateJdbcType- Throws:
SQLException
-
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
-