Package org.hibernate.metamodel.mapping
@Incubating
package org.hibernate.metamodel.mapping
Defines the runtime mapping metamodel, which describes the mapping
of the application's domain model parts (entities, attributes) to
relational database objects (tables, columns).
- Implementation Specification:
- This entire package is considered incubating at the moment
- Implementation Note:
- Built on top of the
org.hibernate.persister
package.
-
ClassDescriptionAn "aggregated" composite identifier, which is another way to say that the identifier is represented as an embeddable.Commonality for an association, mainly details relative to the foreign-keyUsed as part of circularity detectionDescribes an attribute at the mapping model level.This is essentially a List of AttributeMapping(s), but exposing an interface which is more suitable to our needs; in particular it expresses the immutable nature of this structure, and allows us to extend it with additional convenience methods such as
AttributeMappingsList.indexedForEach(IndexedConsumer)
.Similar toAttributeMappingsList
, this is essentially an immutable Map of AttributeMapping(s), allowing iteration of all mappings but also retrieval by name (a String key).Mapping for a simple, single-column identifierAny basic-typed ValueMapping.Describes a ModelPart which is a basic value, either aBasic
attribute a basic-valued collection partContract for things at the domain mapping level that can be bound into a JDBCPreparedStatement
.Functional interface for consuming the JDBC values, along with two values of typeX
andY
.Functional interface for consuming the JDBC values.Descriptor for the collection identifier.MappingType descriptor for the collection Java type (List, Set, etc)Hibernate understands mapping a collection into 4 parts The key - the foreign-key defining the association to the owner The element - for Maps this is analogous to the value The index - the List/array index or Map key The collection-id - this is only relevant for id-bag mappingsMapping for a composite identifierImplements the default discriminator assignment strategy defined by JPA, that is, the discriminator value is the JPA (unqualified) entity name.Anything that has a discriminator associated with it.A discriminated association.Mapping of a discriminator, for either entity or association (ANY) discrimination.Union ofConvertedBasicType
andBasicDomainType
capabilities.Details for a particular discriminator value.Handles conversion of discriminator values for embeddable subtype classes to their domain typed form.Details about the discriminator for an embeddable hierarchy.Describes an embeddable - the actual typeDescribes the mapping of an embeddable (composite).Commonality between `many-to-one`, `one-to-one` and `any`, as well as entity-valued collection elements and map-keysDetails about the discriminator for an entity hierarchy.Describes the mapping of an entity's identifier.The style of identifier used.Mapping of an entityMapping of a row-idDescribes the mapping of an entity's versionThings that can have associatedFilter
declarations.Descriptor for foreign-keysDescribes the mapping for things which can be expressed in a SQL query.Container for one-or-more JdbcMappingsMapping-model corollary toManagedType
Conversion of discriminator values between the entity name/Class domain form and its generally CHARACTER or INTEGER based relational formLogger used during mapping-model creationSomething that can be expressible at the mapping model level.Common descriptor for types in the mapping model - entities, embeddables, String, Integer, etcBase descriptor, within the mapping model, for any part of the application's domain model: an attribute, an entity identifier, collection elements, and so on.Functional interface for consuming the JDBC values, along with two values of typeX
andY
.Functional interface for consuming the JDBC values.Access to a group of ModelPart by name or for iteration.Logging related to natural-id operationsMapping for an entity's natural-id, if one is defined.A "non-aggregated" composite identifier, which means that the entity itself does not define a singular representation of its identifier like an aggregated mapping does.Think of an AttributeConverter for id values to account for representation difference between virtual and id-class mappingsMarker interface for exceptions thrown during mapping-model creation which are not transient errors - they will never succeedMarker interface for valued model parts that have a declaring/owner type.Mapping of a plural (collection-valued) attributeDescribes an attribute with a property access.Consumer used to visit selectable (column/formula) mappingsMapping of a selectable (column/formula)A container for multiple selectable (column, formula) mappings.The path for a selectable.Mapping for a singular (non-collection) attribute.Model part which can be soft-deletedMetadata about the indicator column for entities and collections enabled for soft deleteUnifying contract for things that are capable of being an expression in the SQL AST.Models the type of a thing that can be used as an expression in a SQL queryDetails about a tableDetails about a column within the key groupDetails about the primary key of a tableDescribes a ModelPart that is also a ValueMapping (and therefore also a SelectableMappings).Describes a mapping related to any part of the app's domain model, for example, an attribute, an entity identifier, collection elements, etc.Marker interface for parts of the application domain model that do not actually exist in the model classes.Things which can haveWhere
declarations - entities and collections