Class JsonBinaryType

  • All Implemented Interfaces:
    java.io.Serializable, org.hibernate.type.BasicType, org.hibernate.type.ProcedureParameterExtractionAware<java.lang.Object>, org.hibernate.type.ProcedureParameterNamedBinder, org.hibernate.type.SingleColumnType<java.lang.Object>, org.hibernate.type.StringRepresentableType<java.lang.Object>, org.hibernate.type.Type, org.hibernate.usertype.DynamicParameterizedType, org.hibernate.usertype.ParameterizedType

    public class JsonBinaryType
    extends AbstractHibernateType<java.lang.Object>
    implements org.hibernate.usertype.DynamicParameterizedType

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

    If you are using PostgreSQL, you can use this JsonBinaryType to map both jsonb and json column types.

    For more details about how to use it, check out this article on vladmihalcea.com.

    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.

    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.hibernate.usertype.DynamicParameterizedType

        org.hibernate.usertype.DynamicParameterizedType.ParameterType
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static JsonBinaryType INSTANCE  
      • Fields inherited from interface org.hibernate.usertype.DynamicParameterizedType

        ACCESS_TYPE, ENTITY, IS_DYNAMIC, IS_PRIMARY_KEY, PARAMETER_TYPE, PROPERTY, RETURNED_CLASS, XPROPERTY
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getName()  
      void setParameterValues​(java.util.Properties parameters)  
      • 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, registerUnderJavaType, 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, resolve, semiResolve, sqlTypes, toColumnNullness, toLoggableString
    • Constructor Detail

      • JsonBinaryType

        public JsonBinaryType()
      • JsonBinaryType

        public JsonBinaryType​(java.lang.reflect.Type javaType)
      • JsonBinaryType

        public JsonBinaryType​(Configuration configuration)
      • JsonBinaryType

        public JsonBinaryType​(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
      • JsonBinaryType

        public JsonBinaryType​(com.fasterxml.jackson.databind.ObjectMapper objectMapper,
                              java.lang.reflect.Type javaType)
      • JsonBinaryType

        public JsonBinaryType​(ObjectMapperWrapper objectMapperWrapper,
                              java.lang.reflect.Type javaType)
    • Method Detail

      • getName

        public java.lang.String getName()
        Specified by:
        getName in interface org.hibernate.type.Type
      • setParameterValues

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