Hibernate查询返回list对象分析学习
2015-08-13 15:38
190 查看
原文章地址
在一次开发中我需要从Hibernate查询返回List对象中(注:这个list对象并非一个完整的model类,而是多表查询拼凑的一些字段),取出部分数据在做一次筛选操作。但list只是一个接口类,并没有具体指明什么类型,所以我们不能轻松的获取到每个list中对象。
于是使用debug模式,我想查看一下这返回的list具体是什么类生成的。通过下图我们可以明显的看出这个list使用对象数组类new出来的。
?
知道具体的生成类型,我们就可以单独取出每个list中的对象,并根据对象中一些属性的值进行其他判断操作。
如下是简单的实例代码:
?
【Ps补充一个技巧】
对于list中的removed操作,List每remove掉一个元素以后,后面的元素都会向前移动,此时如果执行i=i+1,则刚刚移过来的元素没有被读取。在网上搜了一下大概有三种方法解决这个问题。
1.倒过来遍历list(个人比较喜欢这种)
?
2.每移除一个元素以后再把i移回来
?
3.使用iterator.remove()方法删除
?
4.也可以直接强转
在一次开发中我需要从Hibernate查询返回List对象中(注:这个list对象并非一个完整的model类,而是多表查询拼凑的一些字段),取出部分数据在做一次筛选操作。但list只是一个接口类,并没有具体指明什么类型,所以我们不能轻松的获取到每个list中对象。
于是使用debug模式,我想查看一下这返回的list具体是什么类生成的。通过下图我们可以明显的看出这个list使用对象数组类new出来的。
?
知道具体的生成类型,我们就可以单独取出每个list中的对象,并根据对象中一些属性的值进行其他判断操作。
如下是简单的实例代码:
?
对于list中的removed操作,List每remove掉一个元素以后,后面的元素都会向前移动,此时如果执行i=i+1,则刚刚移过来的元素没有被读取。在网上搜了一下大概有三种方法解决这个问题。
1.倒过来遍历list(个人比较喜欢这种)
?
?
?
Query query = session.createQuery("from Userinfo"); List list = query.list(); Userinfo user = (Userinfo) list.get(0);
相关文章推荐
- hdu 3336 Count the string kmp
- mysql引擎分析说明整理
- HBuilder初探——强大的提示符及纯网页打包成APP
- python运行报错:urllib2.URLError: <urlopen error [Errno 10061] >
- JS - IE or not:判断是否为IE浏览器方法
- 回调函数
- HDOJ-1242-Rescue
- 使word里面的文章自动生成目录
- bootstrap 主题颜色搭配
- 函数调用约定 and 函数名字修饰规则
- javascript 函数学习
- 掌握VS2010调试 -- 入门指南
- Android 系统获取内存,ROM,SD卡大小
- Java中String问题汇总
- 对于一些R数据分析的体会
- MFC CMainFrame 获得所有子窗体(一)
- 提前获取文本的宽度,便于合理显示文本显示框
- C语言中各种%的含义
- Python3 多线程并发 post 压力测试 并发编程
- 进入到文件系统,使用mount命令挂载到Linux不成功。出现 failed: No such device