gpt4 book ai didi

java - hibernate 加入条件

转载 作者:行者123 更新时间:2023-12-02 01:38:52 26 4
gpt4 key购买 nike

我需要执行一个返回“b”对象列表的条件。我有以下类(class):

---
A
---
private BigDecimal id;
private String name;
private B b;

---
B
---
private BigDecimal id;
private String name;

我这样做:

Criteria criteria = getSession().createCriteria(A.class,"a").createCriteria("b");
return criteria.list();

我总是得到一个列表< A >,但我不知道如何获取列表< B >。这可能吗?

编辑:使用 Java SE 1.7

最佳答案

如果您不希望 A 和 B 之间存在双向关系,请使用别名,然后仅收集 b 属性。

List<A> aList = getSession().createCriteria(A.class, "a")
.createAlias("a.b", "b")
.add(Restrictions.eq("a.name", "A name")
.add(Restrictions.eq("b.name", "B name")
.list();
List<B> bList = new ArrayList<>(aList.size());
for (A a : aList) {
bList.add(a.getB());
}

关于java - hibernate 加入条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54764506/

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