好记忆不如敲键盘!
听说hibernate有两大查询方式hql(hibernate query language)和QBC(query by Criteria),据说前者相对来说更加灵活与强大。于是小白的我开始了踩雷之旅.我使用的是hibernate5.3
问题:
写好了查询的hql语句后,用list<其他类型> datalist = currentSession.creatQuery("select xxx from xxx“).list()来接收查询成功的返回结果,当想转换list集合中的元素类型时候,会报类型转换错误(object不能转换为其他类型)!
解决:
在网上搜索了许多资料,发现原来list()方法返回的是 object[] 类型 和 相应的实体类类型还有其他类型。
看见网上前辈写解决办法还不错,
String hql="select u.name,u.age from User u";
//创建HQL查询
Query q= session.createQuery(hql);
List<Object[]> list=q.list();
for (int i = 0; i < list.size(); i++) {
Object[] os=list.get(i);
System.out.println("用户名是:"+os[0]+"年龄是:"+os[1]);
}
转自:[https://www.cnblogs.com/quchengfeng/p/4111749.html]
感谢前辈们及同行的浏览,欢迎提出批评与建议!
闻道有先后,术业有专攻!