Interface DomainType<J>

All Superinterfaces:
BindableType<J>, SqmExpressible<J>
All Known Subinterfaces:
AdjustableBasicType<J>, AnyMappingDomainType<J>, BasicDomainType<J>, BasicPluralType<C,E>, BasicType<T>, ConvertedBasicType<J>, DiscriminatorType<O>, EmbeddableDomainType<J>, EmbeddedDomainType<J>, EntityDomainType<J>, IdentifiableDomainType<J>, ManagedDomainType<J>, MappedSuperclassDomainType<J>, ReturnableType<T>, SimpleDomainType<J>, TreatableDomainType<J>
All Known Implementing Classes:
AbstractDiscriminatorSqmPathSource, AbstractDomainType, AbstractIdentifiableType, AbstractManagedType, AbstractSingleColumnStandardBasicType, AbstractStandardBasicType, AnonymousTupleType, AnyDiscriminatorSqmPathSource, AnyMappingDomainTypeImpl, ArrayTupleType, BasicArrayType, BasicCollectionType, BasicSqmPathSource, BasicTypeImpl, BasicTypeImpl, BottomType, ConvertedBasicArrayType, ConvertedBasicCollectionType, ConvertedBasicTypeImpl, CustomMutabilityConvertedBasicTypeImpl, CustomMutabilityConvertedPrimitiveBasicTypeImpl, CustomType, DiscriminatorType, DiscriminatorTypeImpl, EmbeddableTypeImpl, EmbeddedDiscriminatorSqmPathSource, EntityDiscriminatorSqmPathSource, EntityTypeImpl, ImmutableNamedBasicTypeImpl, JavaObjectType, MappedSuperclassTypeImpl, NamedBasicTypeImpl, NullType, PrimitiveBasicTypeImpl, QueryParameterJavaObjectType, SerializableToBlobType, SerializableType, SqmCteTable, SqmPolymorphicRootDescriptor, StandardBasicTypeTemplate

public interface DomainType<J> extends SqmExpressible<J>
Describes any type that occurs in the application's domain model.

The base for Hibernate's extension of the JPA type system.

Encapsulates a JavaType describing the more rudimentary aspects of the Java type. The DomainType is a higher-level construct incorporating information such as bean properties, constructors, etc

Implementation Note:
The actual JPA type system is more akin to SimpleDomainType. This contract represents a "higher level" than JPA including descriptors for collections (which JPA does not define) as well as Hibernate-specific features (like dynamic models or ANY mappings).