`
xueyue
  • 浏览: 27192 次
  • 性别: Icon_minigender_1
  • 来自: 云南省
社区版块
存档分类
最新评论

关于EAGER和LAZY的总结

阅读更多
通过一系列的实验得出结论:
1.LAZY只有在具体使用到对象的时候才会访问数据库,在这个过程中,session不能被关闭;而EAGER则直接访问数据库,将对应的信息拿出来。
2.两个表之间有关联关系,使用LAZY的话,只有在调用另一个表的时候才会使用到关联关系,而平时不会用到。使用EAGER则不然,只要一用到,它就会使用到关联关系(就是数据库中表的相关关系)。不过上下文中,只要初次使用到的时候关联过就可以了。
3.Hibernate默认情况下,一的一端使用的是LAZY,而多的一端使用的是EAGER。
分享到:
评论

相关推荐

    Lazy loading - eager loading

    In this article I want to discuss the lazy loading mechanism provided by NHibernate. It is recommended for maximum flexibility to define all relations in your domain as lazy loadable. This is the ...

    hibernate在集合上的lazy策略

    5. **性能优化**:讨论如何根据业务需求调整懒加载策略,以平衡性能和内存使用,可能涉及Eager Fetching、Fetch Graphs和JOIN fetch。 6. **Open Session in View(OSIV)模式**:如果文章涉及,可能会介绍这个模式...

    Laravel开发-laravel-lazy-mysql

    总结起来,"laravel-lazy-mysql"主题强调了在Laravel中如何通过懒加载和预加载策略优化MySQL数据库操作,提升应用性能。理解和掌握这些技巧对于任何Laravel开发者来说都是至关重要的,特别是当他们的应用需要处理...

    cortex-m4f-lazy-stacking-and-context-switching.pdf

    ARM Cortex-M4(F) 处理器提供了多种 Context Switching 模式,包括 Lazy Stacking 模式和 Eager Stacking 模式。Lazy Stacking 模式可以减少 Context Switching 的开销,但需要更多的栈空间。Eager Stacking 模式...

    hibernate在单端关联上的lazy策略

    这与Eager Loading(即时加载)相反,Eager Loading会在加载主实体时一起加载关联实体,可能导致不必要的数据传输和性能消耗。 描述中提到的博客链接可能提供了更深入的分析和示例,通常会涵盖以下内容: 1. **...

    java-spring-lazy-vs-eager:演示

    在Java Spring框架中,"懒加载"(Lazy Loading)和"急加载"(Eager Loading)是两种重要的关联关系加载策略,主要用于管理对象之间的依赖和数据检索效率。本项目"java-spring-lazy-vs-eager"显然是一个演示,旨在...

    SSH笔记-检索策略(lazy、fetch、batch-size)

    `fetch`属性用于设置集合检索策略,主要有`LAZY`(默认,懒加载)和`EAGER`(即时加载)。例如,对于一对多或多对多关系,可以设置`fetch="join"`来执行外连接加载,一次性获取所有关联记录,避免多次查询。 4. **...

    Hibernate lazy加载FOR Connection

    FetchType.LAZY和FetchType.EAGER是两种主要的加载策略,前者对应懒加载,后者则是在加载主对象时同时加载关联对象。 总之,Hibernate的懒加载机制对于提高应用程序的性能和优化数据库交互具有重要意义。开发者需要...

    lazyFetchCache

    总结来说,"lazyFetchCache" 关注的是如何有效地管理数据库关联数据的加载和存储,包括延迟加载以减少不必要的数据库交互,一次性加载以优化整体查询效率,以及利用缓存技术来加速数据的获取。在设计数据库访问策略...

    ar_lazy_preload:ActiveRecord模型的延迟加载关联

    您唯一需要更改的是使用#lazy_preload而不是#includes #eager_load , #includes #eager_load或#preload 快。 查看( TASK=bench和TASK=memory ) 非常适合GraphQL 。 定义要在顶级解析器中加载的关联列表,并让gem...

    Laravel开发-eloquent-log-lazy-loading

    7. 关于`exists`和`getRelations`: 在检查模型是否包含关联数据时,可以使用`exists`方法检查关联是否存在,而`getRelations`方法则返回所有已加载的关联。 总之,理解并正确使用Eloquent的延迟加载,以及如何记录...

    Hibernate注解用法总结

    - `@Basic`: 控制属性的加载策略,可以选择即时获取(EAGER)或延迟获取(LAZY)。 - `@Temporal`: 用于处理日期和时间字段,可以设置为DATE、TIME或TIMESTAMP,以控制时间精度。 - `@GeneratedValue`中的`@...

    01_传智播客JPA详解_全面阐释和精彩总结JPA

    8. **懒加载(Lazy Loading)与即时加载(Eager Loading)**:理解这两种加载策略,以及如何选择合适的策略来优化性能。 9. **二级缓存(Second-Level Cache)**:探讨如何利用JPA的二级缓存提高应用程序的性能。 ...

    hibernate关联关系总结

    在实际应用中,为了确保数据一致性,我们还需要理解懒加载(Lazy Loading)和急加载(Eager Loading)的概念,以及它们在不同关联关系中的应用。同时,了解级联操作(Cascade Type)如SAVE_UPDATE、PERSIST、REMOVE...

    hibernate的知识总结

    - **Hibernate生成策略**:可以通过注解`@Basic`来声明属性的存取策略,例如延迟获取(`FetchType.LAZY`)或即时获取(`FetchType.EAGER`)。 - **时间精度映射**:通过`@Temporal`注解定义映射到数据库的时间精度,...

    hibernate

    主要有两种取值:`EAGER`(急切加载)和`LAZY`(延迟加载)。默认情况下,Hibernate使用的是`LAZY`模式,即除非显式访问关联实体,否则不会立即加载这些关联的数据。 #### Lazy Loading 当配置为`Lazy`时,关联的...

    ps-eager-loading:为Prestashop数据库实施Eager加载

    ### LAZY LOADING vs EAGER LOADING Prestashop aways在查询数据库时使用延迟加载:这意味着它针对所需的每个实体(产品,特定价格,组减少)运行查询,这意味着节省内存空间,这实际上是一个非常糟糕的策略。...

    J2EE系统之-hibernate学习总结

    ### J2EE系统之-hibernate学习总结 #### 对象持久化理论 - **对象持久化定义**:将对象中的数据转换存储至外部持久性存储设备的过程,如数据库、磁盘等。 - **对象持久化的原因**: - 内存易失性:断电后数据丢失...

    Hibernate 注解(总结).docx

    - `FetchType.LAZY` 或 `FetchType.EAGER`: 控制关联对象的加载策略,`LAZY`表示延迟加载,只有在需要时才加载关联对象;`EAGER`表示立即加载。 通过上述注解,我们可以轻松地在Java类中描述数据库表结构和对象关系...

    FlinkDay04辅机DeepDiveofFlinkRuntime.pdf

    作业调度还考虑了作业执行策略,例如 Eager 和 Lazy_from_source 策略,以及 LocationPreference,即任务调度时对于资源位置的偏好。 2. **资源管理**:Flink 的资源管理机制基于 Slot 概念。Slot 是 Flink 中资源...

Global site tag (gtag.js) - Google Analytics