com.vladmihalcea.hibernate.type.json
Class JsonStringType

java.lang.Object
  extended by org.hibernate.type.AbstractStandardBasicType<T>
      extended by org.hibernate.type.AbstractSingleColumnStandardBasicType<T>
          extended by com.vladmihalcea.hibernate.type.AbstractHibernateType<Object>
              extended by com.vladmihalcea.hibernate.type.json.JsonStringType
All Implemented Interfaces:
Serializable, org.hibernate.type.BasicType, org.hibernate.type.ProcedureParameterExtractionAware<Object>, org.hibernate.type.ProcedureParameterNamedBinder, org.hibernate.type.SingleColumnType<Object>, org.hibernate.type.StringRepresentableType<Object>, org.hibernate.type.Type, org.hibernate.usertype.DynamicParameterizedType, org.hibernate.usertype.ParameterizedType

public class JsonStringType
extends AbstractHibernateType<Object>
implements org.hibernate.usertype.DynamicParameterizedType

Maps any given Java object on a JSON column type that is managed via PreparedStatement.setString(int, String) at JDBC Driver level.

If you want to use a more portable Hibernate Type that can work on Oracle, SQL Server, PostgreSQL, MySQL, or H2 without any configuration changes, then you should use the JsonType instead.

Author:
Vlad Mihalcea
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.hibernate.usertype.DynamicParameterizedType
org.hibernate.usertype.DynamicParameterizedType.ParameterType
 
Field Summary
static JsonStringType INSTANCE
           
 
Fields inherited from interface org.hibernate.usertype.DynamicParameterizedType
ACCESS_TYPE, ENTITY, IS_DYNAMIC, IS_PRIMARY_KEY, PARAMETER_TYPE, PROPERTY, RETURNED_CLASS, XPROPERTY
 
Constructor Summary
JsonStringType()
           
JsonStringType(Configuration configuration)
           
JsonStringType(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
           
JsonStringType(com.fasterxml.jackson.databind.ObjectMapper objectMapper, Type javaType)
           
JsonStringType(ObjectMapperWrapper objectMapperWrapper)
           
JsonStringType(ObjectMapperWrapper objectMapperWrapper, Type javaType)
           
JsonStringType(Type javaType)
           
 
Method Summary
 String getName()
           
protected  boolean registerUnderJavaType()
           
 void setParameterValues(Properties parameters)
           
 
Methods inherited from class com.vladmihalcea.hibernate.type.AbstractHibernateType
getConfiguration
 
Methods inherited from class org.hibernate.type.AbstractSingleColumnStandardBasicType
nullSafeSet, sqlType
 
Methods inherited from class org.hibernate.type.AbstractStandardBasicType
assemble, beforeAssemble, canDoExtraction, canDoSetting, compare, deepCopy, deepCopy, defaultSizes, dictatedSizes, disassemble, extract, extract, fromString, fromStringValue, get, getColumnSpan, getDefaultSize, getDictatedSize, getHashCode, getHashCode, getJavaTypeDescriptor, getMutabilityPlan, getRegistrationKeys, getReplacement, getReturnedClass, getSemiResolvedType, getSqlTypeDescriptor, hydrate, isAnyType, isAssociationType, isCollectionType, isComponentType, isDirty, isDirty, isDirty, isEntityType, isEqual, isEqual, isModified, isMutable, isSame, isXMLElement, nullSafeGet, nullSafeGet, nullSafeGet, nullSafeGet, nullSafeSet, nullSafeSet, nullSafeSet, nullSafeSet, remapSqlTypeDescriptor, replace, replace, resolve, semiResolve, set, setJavaTypeDescriptor, setSqlTypeDescriptor, sqlTypes, toColumnNullness, toLoggableString, toString
 
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.SingleColumnType
fromStringValue, get, nullSafeGet, set, toString
 
Methods inherited from interface org.hibernate.type.Type
assemble, beforeAssemble, compare, deepCopy, defaultSizes, dictatedSizes, disassemble, getColumnSpan, getHashCode, getHashCode, getReturnedClass, getSemiResolvedType, hydrate, isAnyType, isAssociationType, isCollectionType, isComponentType, isDirty, isDirty, isEntityType, isEqual, isEqual, isModified, isMutable, isSame, nullSafeGet, nullSafeGet, nullSafeSet, replace, replace, resolve, semiResolve, sqlTypes, toColumnNullness, toLoggableString
 

Field Detail

INSTANCE

public static final JsonStringType INSTANCE
Constructor Detail

JsonStringType

public JsonStringType()

JsonStringType

public JsonStringType(Type javaType)

JsonStringType

public JsonStringType(Configuration configuration)

JsonStringType

public JsonStringType(com.fasterxml.jackson.databind.ObjectMapper objectMapper)

JsonStringType

public JsonStringType(ObjectMapperWrapper objectMapperWrapper)

JsonStringType

public JsonStringType(com.fasterxml.jackson.databind.ObjectMapper objectMapper,
                      Type javaType)

JsonStringType

public JsonStringType(ObjectMapperWrapper objectMapperWrapper,
                      Type javaType)
Method Detail

getName

public String getName()
Specified by:
getName in interface org.hibernate.type.Type

registerUnderJavaType

protected boolean registerUnderJavaType()
Overrides:
registerUnderJavaType in class org.hibernate.type.AbstractStandardBasicType<Object>

setParameterValues

public void setParameterValues(Properties parameters)
Specified by:
setParameterValues in interface org.hibernate.usertype.ParameterizedType


Copyright © 2021. All rights reserved.