2013-04-20 71 views
0

我有用户表迭代与Hibernate查询列表

UID用户名密码 1斯蒂芬1542S 2詹姆斯8452b

存储过程的名称: sp_gridview 查询: SELECT * FROM用户表

List list=null; 
list=hibernateTemplate. 
getSessionFactory().openSession() 
.createSQLQuery("call sp_gridview").list(); 

for(int i=0; i<list.size(); i++) 
{ 
System.out.println(list.get(i)); 
} 

这里我没有使用泛型,因为这不需要我的需求对此语句。 我尝试迭代上面的列表,但它显示结果是散列码。

output: [Ljava.lang.Object;@3c668d12. 

我如何迭代列表并获得一个没有哈希码的值。

回答

0

看起来你会得到一个Object回来,并且Object.toString()它试图打印时被调用打印它。为了解决这个问题,你可以将其转换为Object的实际类型,以获得特定的toString()方法。因此:

System.out.println((String)list.get(i)); 
+0

谢谢您的快速响应pescis。但它没有工作,现在 – 2013-04-20 08:55:47

+0

我得到这个异常java.lang.ClassCastException:[Ljava.lang.Object;不能转换为java.lang.String – 2013-04-20 08:56:30

+0

你在列表中有什么?将其转换为该字符串,而不是String。 – ddmps 2013-04-20 12:35:15