Hibernate——list()与iterate()
2015-11-22 11:47
204 查看
session.createQuery("from User").list(); session.createQuery("from User").iterate();
区别:
·在生成list或interator时,list会将每个对象全部取出,而iterate仅仅取出每个对象的id(主键),等需要用到该对象时,再去取出整个对象。
·在同一个session中,每次生成list时,都会发SQL语句,并将取出的对象放入(或刷新)缓存;而每次生成iterate时,只会在第一次发出SQL语句,并将取出的对象放入缓存,以后再遍历时,若缓存中有,则直接从缓存中取,若缓存中没有,则去数据库取。
若想精益求精,则在第一次取对象时使用list(让其往session缓存中装东西),之后再使用iterate
相关文章推荐
- Hibernate Oracle sequence的使用技巧
- jsp Hibernate批量更新和批量删除处理代码
- jsp hibernate的分页代码第1/3页
- JAVA+Hibernate 无限级分类
- SSH整合中 hibernate托管给Spring得到SessionFactory
- jsp hibernate 数据保存操作的原理
- hibernate中的增删改查实现代码
- 解决hibernate+mysql写入数据库乱码
- java优化hibernate性能的几点建议
- java Hibernate延迟加载
- hibernate 常用方法介绍
- JQuery+Ajax+Struts2+Hibernate框架整合实现完整的登录注册
- 深入理解Hibernate中的flush机制
- 简单的手工hibernate程序示例
- 解析使用jdbc,hibernate处理clob/blob字段的详解
- 浅析java程序中hibernate的应用总结
- java面试常见问题之Hibernate总结
- 关于Hibernate的一些学习心得总结
- 浅析Java的Hibernate框架中的缓存和延迟加载机制
- Hibernate管理Session和批量操作分析