如何从hibernate查询中获取java.util.Map?

我想知道从hibernate查询获取地图数组的最佳方法是什么。 Google表示要迭代query.list(),并将对象创建/放入空地图数组中。
我想有一些优雅而有效的方法来做到这一点。 有人可以给我一些想法吗?

请参阅Hibernate文档 – 15.6。 select子句 :

您可以使用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 

此查询将别名中的Map返回到选定值。