`
234390216
  • 浏览: 10232373 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
A5ee55b9-a463-3d09-9c78-0c0cf33198cd
Oracle基础
浏览量:462599
Ad26f909-6440-35a9-b4e9-9aea825bd38e
springMVC介绍
浏览量:1775474
Ce363057-ae4d-3ee1-bb46-e7b51a722a4b
Mybatis简介
浏览量:1398314
Bdeb91ad-cf8a-3fe9-942a-3710073b4000
Spring整合JMS
浏览量:395003
5cbbde67-7cd5-313c-95c2-4185389601e7
Ehcache简介
浏览量:679964
Cc1c0708-ccc2-3d20-ba47-d40e04440682
Cas简介
浏览量:530856
51592fc3-854c-34f4-9eff-cb82d993ab3a
Spring Securi...
浏览量:1183880
23e1c30e-ef8c-3702-aa3c-e83277ffca91
Spring基础知识
浏览量:467823
4af1c81c-eb9d-365f-b759-07685a32156e
Spring Aop介绍
浏览量:151372
2f926891-9e7a-3ce2-a074-3acb2aaf2584
JAXB简介
浏览量:68130
社区版块
存档分类
最新评论

hibernate取数据时iterator和list的区别

阅读更多

用List,List将会把数据拿到内存里面,但是它要用的时候不会到内存里面去拿,这里是二级缓存

session.createQuery("from Test").list();

 

用Iterator,用Iterator时,如果它要用数据它会先到内存中去拿,如果内存中
没有的话,它才会到数据库中去取,并且能够把数据Load到内存中!这里说的也是二级缓存

session.createQuery("from Test").iterate();

 

 

分享到:
评论
1 楼 a6892509 2011-08-12  

相关推荐

    Hibernate教程24_Hibernate的补充_list与iterator

    本教程将重点讲解在使用Hibernate时,如何处理查询结果集合,特别是通过`list()`和`iterator()`方法进行数据迭代的操作。 【描述】"http://blog.csdn.net/e421083458/article/details/8794127" 这个链接指向的是一...

    jdbc和hibernate的区别

    4. **适用场景**:Hibernate的Iterator适合大数据量且只需要部分数据的情况,而List适合一次性加载所有数据。 **结论:** 1. 精心优化的JDBC在性能上通常是最佳选择,特别是在读取操作中。 2. Hibernate提供了更高...

    Hibernate数据检索(HQL)笔记

    ### Hibernate数据检索(HQL)知识点详解 #### 一、简介 Hibernate 是一款开源的对象关系映射(ORM)框架,它允许开发人员将 Java 对象映射到数据库表中的记录,从而极大地简化了数据访问层的开发工作。本文档基于...

    hibernate难点重点笔记

    在处理列表数据时,可以选择iterator()和list()。list()方法在首次执行时会将结果存入二级缓存,并记录SQL,如果后续请求相同的SQL且数据未变动,可以直接从缓存中获取,避免重复数据库查询。适合数据变更不频繁的...

    hibernate入门 数据查询.doc

    在本文中,我们将深入探讨Hibernate框架中的数据查询,特别是使用Hibernate Query Language (HQL)。Hibernate是一个流行的Java持久化框架,它允许开发者通过面向对象的方式来操作数据库,极大地简化了数据库交互的...

    java Hibernate ireport jsperreport 制作报表

    Java平台提供了多种工具来实现报表制作,其中iReport和JasperReport是非常流行的选择,它们可以与ORM框架Hibernate进行整合,实现动态数据源的报表生成。 1. **iReport与JasperReport** iReport是一款基于Java的...

    优化Hibernate性能的几点建议

    当处理大量的数据时,使用`Iterator`而不是`List`来遍历结果集可以节省大量的内存资源。这是因为`Iterator`在每次调用`next()`方法时只会加载当前的记录,而不会一次性加载所有的结果到内存中。这种方式特别适用于...

    Hibernate几种获数据方法比较

    在处理大量数据查询时,`Query.iterator()`和`Query.list()`是两种常用的方法: - **`Query.iterator()`**: 此方法返回一个迭代器,适用于需要逐条处理大量数据的场景。通过迭代器,每次只加载一条数据到内存中,...

    hibernate criteria 分组 排序 关联

    Hibernate提供了`setMaxResults()`和`setFirstResult()`两个方法来帮助实现这一功能。 **示例代码**: ```java Criteria criteria = session.createCriteria(User.class); criteria.setFirstResult(51); // 设置...

    hibernate 调优

    iterator 在处理大量数据时更为高效,因为它可以逐条加载数据并释放内存。 #### 八、总结 Hibernate 性能调优涉及多个层面,包括数据库设计、查询语言优化、缓存管理等。合理配置和使用 Hibernate 可以显著提升...

    hibernate更新数据方法小结

    Session session=HibernateSessionFactory.getSession(); String sql=”from Usertable as user where user.username=?”; Query q=session.createQuery(sql); q.setString(0,username); List l=q.list(); Iterator...

    在Hibernate中处理批量更新和批量删除

    然而,在处理大量数据时,如何有效地进行批量更新和批量删除操作,是每一个开发者都可能遇到的挑战。本文将深入探讨在Hibernate中处理批量更新和批量删除的策略,以及如何优化这些操作,以提高数据库操作的效率。 #...

    使用hibernate封装方法

    标题“使用Hibernate封装方法”暗示我们将讨论如何在项目中通过封装Hibernate操作,以提高代码的复用性和可读性。通常,我们会在DAO(数据访问对象)层进行这些封装,将数据库的CRUD(创建、读取、更新、删除)操作...

    hibernate_third项目源码

    2. **实体类和数据表映射**:Hibernate通过ORM机制将Java对象映射到数据库表。每个实体类通常对应一个数据库表,类的属性对应表的列。在项目中,你会看到@Entity注解、@Table、@Column等注解的使用,它们定义了对象...

    struts2整合hibernate

    Struts2和Hibernate是两种非常流行的Java Web开发框架,它们分别负责表现层和持久层的管理。Struts2是一款强大的MVC(Model-View-Controller)框架,它提供了丰富的动作和拦截器,使得Web应用的控制逻辑更加清晰。而...

    hibernate源码分析过程

    Hibernate 支持 JMX(Java Management Extensions)和 JCA(J2EE Connector Architecture),可以将 Hibernate 集成到 Java EE 应用服务器中。 配置 Hibernate 的配置可以通过多种方式实现,包括配置文件、可编程...

    Hibernate 性能优化

    1. **List/Set/Bag/Map**:在处理大量数据时,使用基于游标的结果集(如 ScrollableResults 或 Iterator)而不是一次性加载所有数据可以有效避免内存溢出的问题。 2. **Session 的 load/get 方法**:load 方法会...

Global site tag (gtag.js) - Google Analytics