Package org.hibernate.type
Interface BasicType<T>
- All Superinterfaces:
BasicDomainType<T>
,BasicType<T>
,BasicValuedMapping
,Bindable
,BindableType<T>
,DomainType<T>
,JavaTypedExpressible
,JdbcMapping
,JdbcMappingContainer
,MappingModelExpressible
,MappingType
,OutputableType<T>
,ReturnableType<T>
,Serializable
,SimpleDomainType<T>
,SqlExpressible
,SqmExpressible<T>
,Type<T>
,Type
,ValueMapping
- All Known Subinterfaces:
AdjustableBasicType<J>
,BasicPluralType<C,
,E> ConvertedBasicType<J>
,DiscriminatorType<O>
- All Known Implementing Classes:
AbstractSingleColumnStandardBasicType
,AbstractStandardBasicType
,BasicArrayType
,BasicCollectionType
,BasicTypeImpl
,BottomType
,ConvertedBasicArrayType
,ConvertedBasicCollectionType
,ConvertedBasicTypeImpl
,CustomMutabilityConvertedBasicTypeImpl
,CustomMutabilityConvertedPrimitiveBasicTypeImpl
,CustomType
,DiscriminatorType
,DiscriminatorTypeImpl
,ImmutableNamedBasicTypeImpl
,JavaObjectType
,NamedBasicTypeImpl
,NullType
,QueryParameterJavaObjectType
,SerializableToBlobType
,SerializableType
,StandardBasicTypeTemplate
public interface BasicType<T>
extends Type, BasicDomainType<T>, MappingType, BasicValuedMapping, JdbcMapping
Marker interface for basic types.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.hibernate.metamodel.mapping.Bindable
Bindable.JdbcValuesBiConsumer<X,
Y>, Bindable.JdbcValuesConsumer Nested classes/interfaces inherited from interface jakarta.persistence.metamodel.Type
Type.PersistenceType
-
Method Summary
Modifier and TypeMethodDescriptiondefault int
compare
(Object x, Object y, SessionFactoryImplementor sessionFactory) default Object
disassemble
(Object value, SharedSessionContractImplementor session) Breaks down a value ofJ
into its simple pieces.default <X,
Y> int forEachDisassembledJdbcValue
(Object value, int offset, X x, Y y, Bindable.JdbcValuesBiConsumer<X, Y> valuesConsumer, SharedSessionContractImplementor session) LikeBindable.forEachDisassembledJdbcValue(Object, Object, Object, JdbcValuesBiConsumer, SharedSessionContractImplementor)
, but additionally receives an offset by which the selectionIndex is incremented when callingBindable.JdbcValuesBiConsumer.consume(int, Object, Object, Object, JdbcMapping)
.default int
forEachJdbcType
(int offset, IndexedConsumer<JdbcMapping> action) Visit each JdbcMapping starting from the given offsetdefault int
forEachJdbcType
(IndexedConsumer<JdbcMapping> action) Visit each of JdbcMappingdefault String
getCheckCondition
(String columnName, Dialect dialect) The check constraint that should be added to the column definition in generated DDL.The Java type descriptor for this expressibleThe descriptor for the Java type represented by this expressible typedefault JdbcLiteralFormatter<T>
The strategy for formatting values of this expressible type to a SQL literal.default JdbcMapping
Anything that is expressible at the SQL AST level would be of basic type.default JdbcMapping
getJdbcMapping
(int index) default int
The number of JDBC mappingsdefault ValueBinder<T>
The strategy for binding values of this expressible type to JDBCPreparedStatement
s andCallableStatement
s.default ValueExtractor<T>
The strategy for extracting values of this expressible type from JDBC ResultSets, CallableStatements, etcThe descriptor descriptor for the mapped Java typedefault MappingType
Descriptor for the type of this mappingString[]
Get the names under which this type should be registered in the type registry.default JdbcMapping
default BasicValueConverter<T,
?> Returns the converter that this basic type uses for transforming from the domain type, to the relational type, ornull
if there is no conversion.Methods inherited from interface org.hibernate.metamodel.model.domain.BasicDomainType
areEqual, getPersistenceType
Methods inherited from interface org.hibernate.metamodel.mapping.BasicValuedMapping
addToCacheKey
Methods inherited from interface org.hibernate.metamodel.mapping.Bindable
forEachDisassembledJdbcValue, forEachDisassembledJdbcValue, forEachDisassembledJdbcValue, forEachJdbcValue, forEachJdbcValue, forEachJdbcValue, forEachJdbcValue
Methods inherited from interface org.hibernate.metamodel.model.domain.DomainType
getSqmType, getTupleLength
Methods inherited from interface org.hibernate.metamodel.mapping.JdbcMapping
convertToDomainValue, convertToRelationalValue, getCastType, getJdbcJavaType, getJdbcType
Methods inherited from interface org.hibernate.query.OutputableType
canDoExtraction, extract, extract, getJdbcType
Methods inherited from interface org.hibernate.metamodel.model.domain.SimpleDomainType
getBindableJavaType
Methods inherited from interface org.hibernate.query.sqm.SqmExpressible
getRelationalJavaType, getTypeName, isInstance, resolveExpressible
Methods inherited from interface jakarta.persistence.metamodel.Type
getJavaType
Methods inherited from interface org.hibernate.type.Type
assemble, beforeAssemble, compare, deepCopy, disassemble, disassemble, getColumnSpan, getColumnSpan, getHashCode, getHashCode, getName, getReturnedClass, getReturnedClassName, getSqlTypeCodes, getSqlTypeCodes, getTypeForEqualsHashCode, isAnyType, isAssociationType, isCollectionType, isComponentType, isDirty, isDirty, isEntityType, isEqual, isEqual, isModified, isMutable, isSame, nullSafeSet, nullSafeSet, replace, replace, toColumnNullness, toColumnNullness, toLoggableString
Methods inherited from interface org.hibernate.metamodel.mapping.ValueMapping
treatAs
-
Method Details
-
getRegistrationKeys
String[] getRegistrationKeys()Get the names under which this type should be registered in the type registry.- Returns:
- The keys under which to register this type.
-
getMappedType
Description copied from interface:ValueMapping
Descriptor for the type of this mapping- Specified by:
getMappedType
in interfaceValueMapping
-
getJavaTypeDescriptor
Description copied from interface:JdbcMapping
The descriptor for the Java type represented by this expressible type- Specified by:
getJavaTypeDescriptor
in interfaceJdbcMapping
-
getExpressibleJavaType
Description copied from interface:SqmExpressible
The Java type descriptor for this expressible- Specified by:
getExpressibleJavaType
in interfaceJavaTypedExpressible<T>
- Specified by:
getExpressibleJavaType
in interfaceSqmExpressible<T>
- Specified by:
getExpressibleJavaType
in interfaceValueMapping
-
forEachJdbcType
Description copied from interface:Bindable
Visit each of JdbcMapping- Specified by:
forEachJdbcType
in interfaceBindable
- Specified by:
forEachJdbcType
in interfaceJdbcMapping
- Specified by:
forEachJdbcType
in interfaceJdbcMappingContainer
-
getJdbcMapping
Description copied from interface:SqlExpressible
Anything that is expressible at the SQL AST level would be of basic type.- Specified by:
getJdbcMapping
in interfaceBasicValuedMapping
- Specified by:
getJdbcMapping
in interfaceSqlExpressible
-
getJdbcTypeCount
default int getJdbcTypeCount()Description copied from interface:Bindable
The number of JDBC mappings- Specified by:
getJdbcTypeCount
in interfaceBasicValuedMapping
- Specified by:
getJdbcTypeCount
in interfaceBindable
- Specified by:
getJdbcTypeCount
in interfaceJdbcMapping
- Specified by:
getJdbcTypeCount
in interfaceJdbcMappingContainer
-
getJdbcMapping
- Specified by:
getJdbcMapping
in interfaceBasicValuedMapping
- Specified by:
getJdbcMapping
in interfaceJdbcMapping
- Specified by:
getJdbcMapping
in interfaceJdbcMappingContainer
- Specified by:
getJdbcMapping
in interfaceSqlExpressible
-
getSingleJdbcMapping
- Specified by:
getSingleJdbcMapping
in interfaceBasicValuedMapping
- Specified by:
getSingleJdbcMapping
in interfaceJdbcMapping
- Specified by:
getSingleJdbcMapping
in interfaceJdbcMappingContainer
-
getMappedJavaType
Description copied from interface:MappingType
The descriptor descriptor for the mapped Java type- Specified by:
getMappedJavaType
in interfaceJdbcMapping
- Specified by:
getMappedJavaType
in interfaceMappingType
-
getValueConverter
Description copied from interface:JdbcMapping
Returns the converter that this basic type uses for transforming from the domain type, to the relational type, ornull
if there is no conversion.- Specified by:
getValueConverter
in interfaceJdbcMapping
-
getJdbcValueExtractor
Description copied from interface:JdbcMapping
The strategy for extracting values of this expressible type from JDBC ResultSets, CallableStatements, etc- Specified by:
getJdbcValueExtractor
in interfaceJdbcMapping
-
getJdbcValueBinder
Description copied from interface:JdbcMapping
The strategy for binding values of this expressible type to JDBCPreparedStatement
s andCallableStatement
s.- Specified by:
getJdbcValueBinder
in interfaceJdbcMapping
-
getJdbcLiteralFormatter
Description copied from interface:JdbcMapping
The strategy for formatting values of this expressible type to a SQL literal.- Specified by:
getJdbcLiteralFormatter
in interfaceJdbcMapping
-
forEachJdbcType
Description copied from interface:JdbcMappingContainer
Visit each JdbcMapping starting from the given offset- Specified by:
forEachJdbcType
in interfaceJdbcMapping
- Specified by:
forEachJdbcType
in interfaceJdbcMappingContainer
-
getCheckCondition
The check constraint that should be added to the column definition in generated DDL.- Parameters:
columnName
- the name of the columndialect
- the SQLDialect
- Returns:
- a check constraint condition or null
- Since:
- 6.2
-
compare
-