Class JoinedSubclassEntityPersister

java.lang.Object
org.hibernate.persister.entity.AbstractEntityPersister
org.hibernate.persister.entity.JoinedSubclassEntityPersister
All Implemented Interfaces:
LazyPropertyInitializer, FetchProfileAffectee, PostInsertIdentityPersister, Loadable, ClassMetadata, Bindable, Discriminable, EntityMappingType, EntityValuedModelPart, FilterRestrictable, InFlightEntityMappingType, JdbcMappingContainer, ManagedMappingType, MappingModelExpressible, MappingType, ModelPart, ModelPartContainer, Restrictable, SoftDeletableModelPart, WhereRestrictable, DeprecatedEntityStuff, EntityPersister, Joinable, Loadable, Lockable, EntityMutationTarget, OuterJoinLoadable, PropertyMapping, Queryable, SQLLoadable, UniqueKeyLoadable, AttributeSource, RootTableGroupProducer, TableGroupProducer, MutationTarget<EntityTableMapping>, FetchableContainer

@Internal public class JoinedSubclassEntityPersister extends AbstractEntityPersister
An EntityPersister implementing the normalized InheritanceType.JOINED inheritance mapping strategy for an entity and its inheritance hierarchy.

This is implemented as a separate table for each subclass, with only declared attributes persisted as columns of that table. Thus, each instance of a subclass has its state stored across rows of multiple tables.