`

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

    博客分类:
  • java
 
阅读更多

String hql="select p.id,p.title from LeaveMessage as p"; 
我这样查出来的记录不能转化为LeaveMessage类 
这是它的提示 java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to vo.LeaveMessage 
错误在这一句 LeaveMessage le=i.next(); 
如果我改成hql="from LeaveMessage as p";这样就不会出错。


如果你只需要查某个字段,那样写就可以了,但它找到的list对象不是LeaveMessage,而是一个Object数组,数组的第一个原素是p.id,第二个原素是p.title..

可以这样拿值
Iterator it = list.iterator();
while(it.hasNext()){
Object[] le = it.next();
String id = (String)le[0];
String title = (String)le[1]; 
}

建议直接查对象,再从对象取字段...
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics