类 AliasResolutionContextImpl

    • 构造器详细资料

      • AliasResolutionContextImpl

        public AliasResolutionContextImpl​(SessionFactoryImplementor sessionFactory)
        Constructs a AliasResolutionContextImpl without any source aliases. This form is used in non-query contexts. Example of query contexts are: HQL, criteria, etc.
        参数:
        sessionFactory - The session factory
      • AliasResolutionContextImpl

        public AliasResolutionContextImpl​(SessionFactoryImplementor sessionFactory,
                                          int suffixSeed)
        Constructs a AliasResolutionContextImpl with the specified seed for unique alias suffixes.
        参数:
        sessionFactory - The session factory
        suffixSeed - The seed value to use for generating the suffix used when generating SQL aliases.
    • 方法详细资料

      • generateCollectionReferenceAliases

        public CollectionReferenceAliases generateCollectionReferenceAliases​(String collectionQuerySpaceUid,
                                                                             CollectionPersister persister,
                                                                             String elementQuerySpaceUid)
        Generate the collection reference aliases for a particular CollectionReference and register the generated value using the query space UID.

        Once generated, there are two methods that can be used to do look ups by the specified query space UID:

        参数:
        collectionQuerySpaceUid - The query space UID for the collection reference.
        persister - The collection persister for collection reference.
        elementQuerySpaceUid - The query space UID for the collection element if the element is an entity type; null, otherwise.
        返回:
        the generated collection reference aliases.
        抛出:
        IllegalArgumentException - if the collection element is an entity type and elementQuerySpaceUid is null.
        另请参阅:
        CollectionReference.getQuerySpaceUid(), CollectionReference.getCollectionPersister()
      • resolveEntityReferenceAliases

        public EntityReferenceAliases resolveEntityReferenceAliases​(String querySpaceUid)
        从接口复制的说明: AliasResolutionContext
        Resolve the given QuerySpace UID to the EntityReferenceAliases representing the SQL aliases used in building the SQL query.

        Assumes that a QuerySpace has already been registered. As such this method simply returns null if no QuerySpace with that UID has yet been resolved in the context.

        指定者:
        resolveEntityReferenceAliases 在接口中 AliasResolutionContext
        参数:
        querySpaceUid - The QuerySpace UID whose EntityReferenceAliases we want to look up.
        返回:
        The corresponding QuerySpace UID, or null.
      • resolveCollectionReferenceAliases

        public CollectionReferenceAliases resolveCollectionReferenceAliases​(String querySpaceUid)
        从接口复制的说明: AliasResolutionContext
        Resolve the given QuerySpace UID to the CollectionReferenceAliases representing the SQL aliases used in building the SQL query.

        Assumes that a QuerySpace has already been registered. As such this method simply returns null if no QuerySpace with that UID has yet been resolved in the context.

        指定者:
        resolveCollectionReferenceAliases 在接口中 AliasResolutionContext
        参数:
        querySpaceUid - The QuerySpace UID whose CollectionReferenceAliases we want to look up.
        返回:
        The corresponding QuerySpace UID, or null.
      • registerCompositeQuerySpaceUidResolution

        public void registerCompositeQuerySpaceUidResolution​(String rightHandSideUid,
                                                             String leftHandSideTableAlias)
      • dumpResolutions

        public void dumpResolutions​(LoadPlan loadPlan)
        USes its defined logger to generate a resolution report.
        参数:
        loadPlan - The loadplan that was processed.