Top Description Interfaces Classes
[default module]

Package org.hibernate.metamodel.mapping

Annotations
@Incubating
Imports
org.hibernate.Incubating

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 Note

Built on top of the org.hibernate.persister package.

Implementation Specification

This entire package is considered incubating at the moment

Interface Summary

Modifier and TypeInterface and Description
public interface
AggregatedIdentifierMapping

An "aggregated" composite identifier, which is another way to say that the identifier is represented as an embeddable.

public interface
Association

Commonality for an association, mainly details relative to the foreign-key

public interface
AttributeMapping

Describes an attribute at the mapping model level.

public interface
AttributeMappingsList

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 indexedForEach(IndexedConsumer).

public interface
AttributeMappingsMap

Similar to AttributeMappingsList, this is essentially an immutable Map of AttributeMapping(s), allowing iteration of all mappings but also retrieval by name (a String key).

public interface
public interface
BasicEntityIdentifierMapping

Mapping for a simple, single-column identifier

public interface
BasicValuedMapping

Any basic-typed ValueMapping.

public interface
BasicValuedModelPart

Describes a ModelPart which is a basic value, either

public interface
Bindable

Contract for things at the domain mapping level that can be bound into a JDBC java.sql.PreparedStatement.

public interface
CollectionIdentifierDescriptor

Descriptor for the collection identifier.

public interface
CollectionMappingType<C>

MappingType descriptor for the collection Java type (List, Set, etc)

public interface
CollectionPart

Hibernate understands mapping a collection into 4 parts

  1. The key - the foreign-key defining the association to the owner
  2. The element - for Maps this is analogous to the value
  3. The index - the List/array index or Map key
  4. The collection-id - this is only relevant for id-bag mappings
public interface
CompositeIdentifierMapping

Mapping for a composite identifier

public interface
Discriminable

Anything that has a discriminator associated with it.

public interface
DiscriminatedAssociationModelPart

A discriminated association.

public interface
DiscriminatorMapping

Mapping of a discriminator, for either entity or association (ANY) discrimination.

public interface
DiscriminatorType<
The Java type of the domain form of the discriminator.
O
>

Union of ConvertedBasicType and BasicDomainType capabilities.

public interface
DiscriminatorValueDetails

Details for a particular discriminator value.

public interface
EmbeddableMappingType

Describes an embeddable - the actual type

public interface
EmbeddableValuedModelPart

Describes the mapping of an embeddable (composite).

public interface
EntityAssociationMapping

Commonality between `many-to-one`, `one-to-one` and `any`, as well as entity-valued collection elements and map-keys

public interface
EntityDiscriminatorMapping

Details about the discriminator for an entity hierarchy.

public interface
EntityIdentifierMapping

Describes the mapping of an entity's identifier.

public interface
EntityMappingType

Mapping of an entity

public interface
EntityRowIdMapping

Mapping of a row-id

public interface
EntityValuedModelPart

Entity-valued model part

public interface
EntityVersionMapping

Describes the mapping of an entity's version

public interface
FilterRestrictable

Things that can have associated org.hibernate.annotations.Filter declarations.

public interface
ForeignKeyDescriptor

Descriptor for foreign-keys

public interface
JdbcMapping

Describes the mapping for things which can be expressed in a SQL query.

public interface
JdbcMappingContainer

Container for one-or-more JdbcMappings

public interface
public interface
MappingModelCreationLogging

Logger used during mapping-model creation

public interface
MappingModelExpressible<T>

Something that can be expressible at the mapping model level.

public interface
MappingType

Common descriptor for types in the mapping model - entities, embeddables, String, Integer, etc

public interface
ModelPart

Base descriptor, within the mapping model, for any part of the application's domain model: an attribute, an entity identifier, collection elements, and so on.

public interface
ModelPartContainer

Access to a group of ModelPart by name or for iteration.

public interface
NaturalIdLogging

Logging related to natural-id operations

public interface
NaturalIdMapping

Mapping for an entity's natural-id, if one is defined.

public interface
NonAggregatedIdentifierMapping

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.

public interface
NonTransientException

Marker interface for exceptions thrown during mapping-model creation which are not transient errors - they will never succeed

public interface
OwnedValuedModelPart

Marker interface for valued model parts that have a declaring/owner type.

public interface
PluralAttributeMapping

Mapping of a plural (collection-valued) attribute

public interface
PropertyBasedMapping

Describes an attribute with a property access.

public interface
public interface
SelectableConsumer

Consumer used to visit selectable (column/formula) mappings

public interface
SelectableMapping

Mapping of a selectable (column/formula)

public interface
SelectableMappings

A container for multiple selectable (column, formula) mappings.

public interface
SingularAttributeMapping

Mapping for a singular (non-collection) attribute.

public interface
SoftDeletableModelPart

Model part which can be soft-deleted

public interface
SoftDeleteMapping

Metadata about the indicator column for entities and collections enabled for soft delete

public interface
SqlExpressible

Unifying contract for things that are capable of being an expression in the SQL AST.

public interface
SqlTypedMapping

Models the type of a thing that can be used as an expression in a SQL query

public interface
TableDetails

Details about a table

public interface
ValuedModelPart

Describes a ModelPart that is also a ValueMapping (and therefore also a SelectableMappings).

public interface
ValueMapping

Describes a mapping related to any part of the app's domain model, for example, an attribute, an entity identifier, collection elements, etc. Used during generation of a SQL AST.

public interface
VirtualModelPart

Marker interface for parts of the application domain model that do not actually exist in the model classes.

public interface
WhereRestrictable

Things which can have org.hibernate.annotations.Where declarations - entities and collections

Class Summary

Modifier and TypeClass and Description
public class
AssociationKey

Used as part of circularity detection

Uniquely distinguishes a side of the foreign-key, using that side's table and column(s)

public class
DefaultDiscriminatorConverter<O, R>

Implements the default discriminator assignment strategy defined by JPA, that is, the discriminator value is the JPA (unqualified) entity name.

public abstract class
public class
MappedDiscriminatorConverter<
The domain type - either
O
,
The Java type of the relational form of the discriminator
R
>

Conversion of discriminator values between the entity name/Class domain form and its generally CHARACTER or INTEGER based relational form

public class
public class
SelectablePath

The path for a selectable.