gpt4 book ai didi

Hibernate LeftOuter 加入 HQL

转载 作者:行者123 更新时间:2023-12-03 06:56:26 25 4
gpt4 key购买 nike

这是我的 left join hql 查询。执行此代码后,我得到列表大小。但无法将对象转换为相应的 pojo 类。

Query query=session.createQuery("from BwClientdetails client left join client.bwClientAllocations");

System.out.println(">>>"+query.list().size());
List<BwClientdetails> list=query.list();
for(int i=0;i<list.size();i++){
BwClientdetails bc=list.get(i);
System.out.println(bc.getClientid());
}

我收到以下错误:

java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to org.bluewhale.model.BwClientdetails
at testapplication.Main.getClients(Main.java:364)
at testapplication.Main.main(Main.java:54)

最佳答案

通过不指定 Select 情况,查询结果是 BwClientdetails、bwClientAllocations 的数组。在查询前面添加 Select client 应该可以解决您的问题

Select client from  BwClientdetails  client left  join client.bwClientAllocations

或将您的 for 替换为

for(int i=0;i<list.size();i++){
BwClientdetails bc=list.get(i)[0];
System.out.println(bc.getClientid());
}

最佳实践是始终指定 where 子句,它甚至是 JPA 规范的一部分

关于Hibernate LeftOuter 加入 HQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5922768/

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