关于hibernate的session.createSQLQuery(sql)直接调用底层SQL后,返回结果集的问题。
数据库中有如下信息
name,sex
张三、男
李四、女
通过Hibernate的 createSQLQuery 可以直接调用底层SQL语句
如下:
List list = (List)getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session) throws HibernateException,SQLException {
Query query = session.createSQLQuery(sql);//底层SQL
return query.list();
}
});
如果通过这种方式,我需要将结果集取出来,然后再遍历一边以便封装到对象中。如下
List<Person> newList = new ArrayList<Person>();
//再次遍历,以便封装对象到List<Person>
for(int i=0;i<list.size();i++){
Object[] tempBean=(Object[])list.get(i);
Person wp = new Person();
wp.setName((String)tempBean[0]);
wp.setSex((String)tempBean[1]);
newList.add(wp);
}
请问能有什么办法,我得到list集合后,直接就转成List<Person>对象集合了,而不需要中间的
再次遍历过程
...全文
相关推荐
hibernate 执行原生sql的几种方式
NULL 博文链接:https://ynp.iteye.com/blog/2007053
在Java的Hibernate框架中使用SQL语句的简单介绍
主要介绍了在Java的Hibernate框架中使用SQL语句的方法,Hibernate是Java的SSH三大web开发框架之一,需要的朋友可以参考下
hibernate执行原生sql语句
hibernate执行原生sql语句
hibernate实现动态SQL查询
hibernate实现动态SQL查询,通过XML配置SQL,FREEMARKER 解析,生成要执行的SQL
hibernate将本地SQL查询结果封装成对象
hibernate将本地SQL查询结果封装成对象。如进行复杂的统计等本地sql语句查询后,直接放到对象里了,而不会再使用Object进行强转


Java SE
