Class JsonBinaryType
java.lang.Object
io.hypersistence.utils.hibernate.type.MutableType<T,JDBC,JAVA>
io.hypersistence.utils.hibernate.type.MutableDynamicParameterizedType<Object,JsonBinaryJdbcTypeDescriptor,JsonJavaTypeDescriptor>
io.hypersistence.utils.hibernate.type.json.JsonBinaryType
- All Implemented Interfaces:
org.hibernate.metamodel.mapping.BasicValuedMapping,org.hibernate.metamodel.mapping.Bindable,org.hibernate.metamodel.mapping.JdbcMappingContainer,org.hibernate.metamodel.mapping.MappingModelExpressible,org.hibernate.metamodel.mapping.SqlExpressible,org.hibernate.metamodel.mapping.ValueMapping,org.hibernate.query.BindableType<Object>,org.hibernate.query.sqm.SqmExpressible<Object>,org.hibernate.type.descriptor.java.JavaTypedExpressible,org.hibernate.usertype.DynamicParameterizedType,org.hibernate.usertype.ParameterizedType,org.hibernate.usertype.UserType<Object>
public class JsonBinaryType
extends MutableDynamicParameterizedType<Object,JsonBinaryJdbcTypeDescriptor,JsonJavaTypeDescriptor>
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.
- Author:
- Vlad Mihalcea
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.hibernate.metamodel.mapping.Bindable
org.hibernate.metamodel.mapping.Bindable.JdbcValuesBiConsumer<X extends Object,Y extends Object>, org.hibernate.metamodel.mapping.Bindable.JdbcValuesConsumer Nested classes/interfaces inherited from interface org.hibernate.usertype.DynamicParameterizedType
org.hibernate.usertype.DynamicParameterizedType.ParameterType -
Field Summary
FieldsFields inherited from interface org.hibernate.usertype.DynamicParameterizedType
ACCESS_TYPE, ENTITY, IS_DYNAMIC, IS_PRIMARY_KEY, PARAMETER_TYPE, PROPERTY, RETURNED_CLASS, XPROPERTY -
Constructor Summary
ConstructorsConstructorDescriptionJsonBinaryType(com.fasterxml.jackson.databind.ObjectMapper objectMapper) JsonBinaryType(com.fasterxml.jackson.databind.ObjectMapper objectMapper, Type javaType) JsonBinaryType(JsonConfiguration configuration) JsonBinaryType(ObjectMapperWrapper objectMapperWrapper) JsonBinaryType(ObjectMapperWrapper objectMapperWrapper, Type javaType) JsonBinaryType(Type javaType) JsonBinaryType(org.hibernate.type.spi.TypeBootstrapContext typeBootstrapContext) -
Method Summary
Methods inherited from class io.hypersistence.utils.hibernate.type.MutableDynamicParameterizedType
setParameterValuesMethods inherited from class io.hypersistence.utils.hibernate.type.MutableType
assemble, deepCopy, disassemble, disassemble, equals, forEachDisassembledJdbcValue, forEachJdbcType, getBindableJavaType, getConfiguration, getExpressibleJavaType, getJavaTypeDescriptor, getJdbcMapping, getJdbcTypeDescriptor, getMappedType, getSqlType, hashCode, isMutable, nullSafeGet, nullSafeSet, replace, returnedClassMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hibernate.metamodel.mapping.BasicValuedMapping
addToCacheKey, getJdbcMapping, getJdbcMappings, getJdbcTypeCount, getSingleJdbcMappingMethods inherited from interface org.hibernate.metamodel.mapping.Bindable
forEachDisassembledJdbcValue, forEachDisassembledJdbcValue, forEachDisassembledJdbcValue, forEachJdbcType, forEachJdbcValue, forEachJdbcValue, forEachJdbcValue, forEachJdbcValueMethods inherited from interface org.hibernate.query.sqm.SqmExpressible
getRelationalJavaType, isInstance, resolveExpressibleMethods inherited from interface org.hibernate.usertype.UserType
getDefaultSqlLength, getDefaultSqlPrecision, getDefaultSqlScale, getJdbcType, getValueConverterMethods inherited from interface org.hibernate.metamodel.mapping.ValueMapping
treatAs
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
JsonBinaryType
public JsonBinaryType() -
JsonBinaryType
-
JsonBinaryType
-
JsonBinaryType
public JsonBinaryType(org.hibernate.type.spi.TypeBootstrapContext typeBootstrapContext) -
JsonBinaryType
public JsonBinaryType(com.fasterxml.jackson.databind.ObjectMapper objectMapper) -
JsonBinaryType
-
JsonBinaryType
-
JsonBinaryType
-
-
Method Details
-
getName
-