【问题标题】:How to get java.util.Map from hibernate query?如何从休眠查询中获取 java.util.Map?
【发布时间】:2010-07-20 17:22:52
【问题描述】:

我想知道从休眠查询中获取地图数组的最佳方法是什么。谷歌说要迭代 query.list(),并创建/将对象放入空地图数组中。
我想会有一些优雅而有效的方法来做到这一点。谁能给我个主意?

【问题讨论】:

标签: java hibernate


【解决方案1】:

Hibernate Documentation - 15.6. The select clause:

您可以使用 as 为选定的表达式分配别名:

select max(bodyWeight) as max, min(bodyWeight) as min, count(*) as n
from Cat cat

这在与选择新地图一起使用时最有用:

select new map( max(bodyWeight) as max, min(bodyWeight) as min, count(*) as n )
from Cat cat

此查询返回一个从别名到选定值的映射。

【讨论】:

  • 如果您使用 createQuery.list 执行 hql,它只会返回一个列表。列表的每个元素都是一个具有一个键和一个值的映射。所以它没有返回地图而是返回地图列表......我错过了什么......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-03-12
  • 2012-01-26
  • 2014-08-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-09
相关资源
最近更新 更多