繁体   English   中英

休眠选择查询

[英]Hibernate select query

我正在使用以下查询从2个表中获取详细信息,然后将结果存储在列表中

Query selectEntry = em.createQuery("select b.affStyle,b.actualAffService " +
    "from SdHeaders a, SdAffectedServices b " +
    "where a.id = b.id AND a.sdClass = 'NET' AND b.actualAffService IS NOT NULL " +
    "AND b.itemType = :itemType " +
    "group by b.affStyle, b.actualAffService");                     

selectEntry.setParameter("itemType",ob.getItemType());
result=selectEntry.getResultList();

执行此操作时,出现以下错误,列表也应填充2个值,但不是。

Subquery result[[Ljava.lang.Object;@2b4a90f0]
Result string[[Ljava.lang.Object;@2b4a90f0]
[Ljava.lang.Object;@2b4a90f0
java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
    at java.util.ArrayList.rangeCheck(ArrayList.java:657)
    at java.util.ArrayList.get(ArrayList.java:433)

当我在SQL Developer中运行查询时,它会给我正确的结果。 有人可以帮忙吗?

selectEntry.setParameter("itemType",ob.getItemType());

这可能是原因。 ob.getItemType()数据类型和itemType数据类型不匹配。 您可以更正并重试吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM