org.hibernate.loader.collection
Class CollectionLoader
java.lang.Object
org.hibernate.loader.Loader
org.hibernate.loader.BasicLoader
org.hibernate.loader.OuterJoinLoader
org.hibernate.loader.collection.CollectionLoader
- All Implemented Interfaces:
- CollectionInitializer
- Direct Known Subclasses:
- SubselectCollectionLoader
- public class CollectionLoader
- extends OuterJoinLoader
- implements CollectionInitializer
Loads a collection of values or a many-to-many association.
The collection persister must implement QueryableCOllection. For
other collections, create a customized subclass of Loader.
- Author:
- Gavin King
- See Also:
OneToManyLoader
Methods inherited from class org.hibernate.loader.OuterJoinLoader |
countCollectionPersisters, countEntityPersisters, generateRootAlias, generateTableAlias, getAliases, getCollectionOwners, getCollectionPersisters, getCollectionSuffixes, getDialect, getEnabledFilters, getEntityPersisters, getJoinType, getLockModes, getOwnerAssociationTypes, getOwners, getSQLString, getSuffixes, initPersisters, isDuplicateAssociation, isDuplicateAssociation, isJoinable, isJoinedFetchEnabled, isJoinedFetchEnabledInMapping, isTooDeep, mergeOuterJoins, orderBy, orderBy, selectString, walkCollectionTree, walkEntityTree, whereString |
Methods inherited from class org.hibernate.loader.Loader |
applyLocks, bindNamedParameters, bindPositionalParameters, doList, getEntityEagerPropertyFetches, getFactory, getQueryIdentifier, getResultColumnOrRow, getResultList, getResultSet, getResultSet, hasSubselectLoadableCollections, isSingleRowLoader, list, loadCollection, loadCollectionBatch, loadCollectionSubselect, loadEntity, loadEntityBatch, loadSingleRow, prepareQueryStatement, preprocessSQL, scroll, upgradeLocks |
CollectionLoader
public CollectionLoader(QueryableCollection collectionPersister,
SessionFactoryImplementor session,
Map enabledFilters)
throws MappingException
CollectionLoader
public CollectionLoader(QueryableCollection collectionPersister,
int batchSize,
SessionFactoryImplementor factory,
Map enabledFilters)
throws MappingException
CollectionLoader
public CollectionLoader(QueryableCollection collectionPersister,
int batchSize,
String subquery,
SessionFactoryImplementor factory,
Map enabledFilters)
throws MappingException
initialize
public void initialize(Serializable id,
SessionImplementor session)
throws HibernateException
- Description copied from interface:
CollectionInitializer
- Initialize the given collection
- Specified by:
initialize
in interface CollectionInitializer
- Throws:
HibernateException
getJoinType
protected int getJoinType(AssociationType type,
FetchMode config,
String path,
Set visitedAssociations,
String lhsTable,
String[] lhsColumns,
boolean nullable,
int currentDepth)
throws MappingException
- We can use an inner join for first many-to-many association
- Overrides:
getJoinType
in class OuterJoinLoader
- Throws:
MappingException
getKeyType
protected Type getKeyType()
toString
public String toString()
- Overrides:
toString
in class Loader
isSubselectLoadingEnabled
protected boolean isSubselectLoadingEnabled()
- Overrides:
isSubselectLoadingEnabled
in class Loader