gpt4 book ai didi

java - 标准:搜索两个不同的实体类

转载 作者:行者123 更新时间:2023-12-01 05:56:03 33 4
gpt4 key购买 nike

我有一个“ super 实体”SuperEntity 和三个扩展父类(super class)的实体 ChildEntity1、...、ChildEntity3。

搜索数据库中的所有实体很容易,即我们可以使用

session.createCriteria(SuperEntity.class);

搜索一种特定实体类型也没有问题,只需将 SuperEntity 替换为任何子实体即可查找该类型的实体。

但是在允许类型“多项选择”时我遇到了问题。即,可能需要搜索类型 1 和 2 的所有实体,但不需要搜索类型 3 的实体。

第一个想法是创建两个独立的查询并将结果连接到最终列表中 - 但这会破坏使用数据库的偏移和限制功能的分页......

Criteria 是否可以将两个不同的查询连接到一个结果列表中?

亲切的问候,

RoCMe

最佳答案

在 HQL 中,它可能看起来像这样(不确定它是否在所有情况下都有效):

from SuperEntity e where e.class in [ChildEntity1, ChildEntity2]

在 Criteria API 中,您可以只使用 IN resitriction为此。

关于java - 标准:搜索两个不同的实体类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2906471/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com