This package abstracts persistence mechanisms for entities, and defines the Hibernate runtime metamodel.

Strategies for persisting entities implement the EntityPersister interface. Optionally, they may implement certain additional interfaces that define contracts with various loaders. Concrete implementations in this package define the built-in inheritance mapping strategies.


DiscriminatorMetadata Provides the information needed to properly handle type discrimination in HQL queries, either by 'something.class' or 'type(something)' references. 
EntityPersister Implementors define mapping and persistence logic for a particular strategy of entity mapping. 
Joinable Anything that can be loaded by outer join - namely persisters for classes or collections. 
Loadable Implemented by a EntityPersister that may be loaded using Loader
Lockable Contract for things that can be locked via a LockingStrategy
OuterJoinLoadable A EntityPersister that may be loaded by outer join using the OuterJoinLoader hierarchy and may be an element of a one-to-many association. 
PropertyMapping Abstraction of all mappings that define properties: entities, collection elements. 
Queryable Extends the generic EntityPersister contract to add operations required by the Hibernate Query Language 
SQLLoadable A class persister that supports queries expressed in the platform native SQL dialect 


AbstractEntityPersister Basic functionality for persisting an entity via JDBC through either generated or custom SQL 
AbstractPropertyMapping Basic implementation of the PropertyMapping contract. 
DiscriminatorType TODO : javadoc 
JoinedSubclassEntityPersister An EntityPersister implementing the normalized "table-per-subclass" mapping strategy 
NamedQueryLoader Not really a Loader, just a wrapper around a named query. 
SingleTableEntityPersister The default implementation of the EntityPersister interface. 
UnionSubclassEntityPersister Implementation of the "table-per-concrete-class" or "roll-down" mapping strategy for an entity and its inheritence hierarchy.