日期:2014-05-20  浏览次数:20741 次

Map类型转换问题!急啊!
List<HashMap<String,String>> list=new ArrayList<HashMap<String,String>>();
list = getHibernateTemplate().find(hql);
for(HashMap<String,String> map : list){ System.out.println(map.get("total"));
}
return getHibernateTemplate().find(hql);



第三行报错了:

java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to java.util.HashMap


亲们,这个怎么改??

------解决方案--------------------
你最好先检查下其类型,未必是HashMap:

for(Object map : list){
System.out.println(map.getClass());
}

------解决方案--------------------
这是你的find方法里面有问题啊。

你的hql语句呢?
是不是联合查询,然后查询不同表的某些列?
如果是的话,接收参数建议改成:List<Object[]>