gpt4 book ai didi

java - HQL 连接多个表,应该返回什么?

转载 作者:行者123 更新时间:2023-12-02 13:10:11 27 4
gpt4 key购买 nike

我将使用 Hibernate 对许多表执行查询,因此我创建了一个如下方法:

public List<Tab1> getListTab1() {
Session session = getCurrentSession();
String hql = "FROM Tab1 t1 join t1.tab2 t2 join t2.tab3 t3";
Query query = session.createQuery(hql);
return query.list();
}

用调试器检查结果似乎是正确的。因此,我尝试迭代结果集,如下所示:

1. List<Tab1> listTab1 = dao.getListTab1();
2. for (Tab1 tab1 : listTab1) {
3. Tab2 tab2 = tab1.getTab2();
4. Tab3 tab3 = tab1.getTab3();
5. }

但我在第 2 行收到 ClassCastException

为什么?怎么了?

谢谢。

最佳答案

尝试这个查询

String hql = "Select t1 FROM Tab1 t1 join fetch t1.tab2 t2 join fetch t2.tab3 t3";

关于java - HQL 连接多个表,应该返回什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43983860/

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