我正在处理spring应用程序。我在Spring框架中使用HibernateDaoSupport类连接到数据库。如何修复java.lang.ClassCastException:java.util.ArrayList同时从数据库获取值
下面是我的Java代码:
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
//imports..
public class MyTableDAOHibernateImpl extends HibernateDaoSupport implements MyTableDAO{
public String getDBValues() throws DataLayerException {
String value = "";
Map<String, String> map = null;
try {
map = (HashMap<String,String>)getHibernateTemplate()
.find("select mt.fname,mt.lname from MyTable as mt where aid= '29983L"' ");
System.out.println("MAP elements : " + map);
if (map != null && !map.isEmpty()) {
Iterator it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry pair = (Map.Entry) it.next();
value = (String) pair.getValue();
System.out.println("name" + value);
}
}
} catch (final DataAccessException dae) {
throw new DataLayerException(dae);
}
return value;
}
上面的代码抛出以下异常:
Encountered serious error building result : java.lang.ClassCastException: java.util.ArrayListjava.lang.ClassCastException: java.util.ArrayList
请建议,在我的代码getHibernateTemplate()将返回每Map<String,String>
。至于我的要求我需要使用HashMap将数据库中返回的值存储在键值对中。无法追踪ClassCastException
。请指教。
地图是一个列表...转换此列表提供给你想要的地图。 – Snickers3192
@ Snickers3192 - 请您详细说明一下。你认为地图是什么意思?我创建的地图对象的类型是java.util.Map。 –
user222
我该如何详细说明,你所说的Map类型的映射实际上是一个列表