com.vladmihalcea.hibernate.type.json
Class JsonNodeBinaryType

java.lang.Object
  extended by org.hibernate.type.AbstractStandardBasicType<T>
      extended by org.hibernate.type.AbstractSingleColumnStandardBasicType<T>
          extended by com.vladmihalcea.hibernate.type.AbstractHibernateType<com.fasterxml.jackson.databind.JsonNode>
              extended by com.vladmihalcea.hibernate.type.json.JsonNodeBinaryType
All Implemented Interfaces:
Serializable, org.hibernate.type.BasicType, org.hibernate.type.ProcedureParameterExtractionAware<com.fasterxml.jackson.databind.JsonNode>, org.hibernate.type.ProcedureParameterNamedBinder, org.hibernate.type.SingleColumnType<com.fasterxml.jackson.databind.JsonNode>, org.hibernate.type.StringRepresentableType<com.fasterxml.jackson.databind.JsonNode>, org.hibernate.type.Type

public class JsonNodeBinaryType
extends AbstractHibernateType<com.fasterxml.jackson.databind.JsonNode>

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

For instance, if you are using PostgreSQL, you can use the JsonNodeBinaryType to map both jsonb and json column types to a Jackson JsonNode object.

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.

Author:
Vlad Mihalcea
See Also:
Serialized Form

Field Summary
static JsonNodeBinaryType INSTANCE
           
 
Constructor Summary
JsonNodeBinaryType()
           
JsonNodeBinaryType(Configuration configuration)
           
JsonNodeBinaryType(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
           
JsonNodeBinaryType(ObjectMapperWrapper objectMapperWrapper)
           
 
Method Summary
 String getName()
           
 
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, 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, semiResolve, sqlTypes, toColumnNullness, toLoggableString
 

Field Detail

INSTANCE

public static final JsonNodeBinaryType INSTANCE
Constructor Detail

JsonNodeBinaryType

public JsonNodeBinaryType()

JsonNodeBinaryType

public JsonNodeBinaryType(Configuration configuration)

JsonNodeBinaryType

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

JsonNodeBinaryType

public JsonNodeBinaryType(ObjectMapperWrapper objectMapperWrapper)
Method Detail

getName

public String getName()


Copyright © 2021. All rights reserved.