`
里克尔奇
  • 浏览: 36101 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hibernate的lazy策略

阅读更多

Hibernatelazy策略

Hibernatelazy策略可以使用在:

*<class>标签上,可以取值:true/false(只影响普通属性,不影响集合属性à集合上设置的还按集合上设置的lazy策略执行;不影响<manay-to-one>/<one-to-one>单端关联à<manay-to-one>/<one-to-one>单端关联标签上设置的还按照其设置的lazy策略执行)

*<property>标签上,可以取值:true/false (用的比较少,需要类增强工具,对字节码进行修改,如果某个属性时图片或是大文本可用)

*<set>\<list>标签上,可以取值:true/false/extra(建议集合上设置为extra,其余和true一样,只是在count true会把所有子类都加在到内存,再计算总数,而extra会智能地发一条count语句)

*<manay-to-one>/<one-to-one>单端关联标签上,可以取值,false/proxy/noproxy(需要增强工具)

lazy概念:只有真正需要对象的时候才会创建对象,对于hibernate而言,只有真正要使用的时候才会发出Sql语句 lazy的有效期就是session的有效期

Hibernate支持lazy策略只有在session打开状态下,为了保证Hibernatelazy策略得以应用 提出了OpenSessionInView模式
spring spring给我们实现了一个
OpenSessionInViewFilter

JPA中也支持lazy策略,同样spring spring给我们实现了一个org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter
<class>
标签上的lazy策略不会影响到集合上的lazy特性,也不会影响到
<many-to-one>
<one-one-one>
单端关联上的lazy 它只会影响到一般属性。

分享到:
评论

相关推荐

    gilead hibernate lazyload例子

    这就是Hibernate懒加载(Lazy Load)机制的作用所在。懒加载是一种延迟加载策略,只在真正需要时才加载关联的数据,以减少内存消耗和提高响应速度。 Gilead,全称为Hibernate for Flex,是用于Flex和Hibernate之间...

    hibernate的lazy策略forClass

    在这个场景中,我们关注的是"hibernate的lazy策略forClass",这涉及到如何对类的属性进行懒加载配置。 首先,我们需要理解Hibernate中的实体类(Entity)。在Hibernate中,一个Java类可以被映射为数据库中的一个表...

    hibernate在集合上的lazy策略

    标题“hibernate在集合上的lazy策略”指的是Hibernate如何处理与实体相关的集合类(如List、Set等)的懒加载。这篇文章可能详细解释了Hibernate在集合懒加载方面的实现方式以及其背后的原理。 懒加载的主要目的是...

    Hibernate lazy延迟加载

    在Java的持久化框架Hibernate中,懒加载(Lazy Loading)是一种重要的优化策略,它的核心思想是“延迟加载”或“按需加载”。默认情况下,当一个实体被加载时,并不会立即加载其关联的对象或集合,而是在真正需要...

    Hibernate lazy加载FOR Connection

    标题中的“Hibernate lazy加载FOR Connection”指的是Hibernate框架中的一种特性,即懒加载(Lazy Loading)。在Hibernate中,懒加载是一种优化策略,它推迟对关联对象的加载,直到真正需要使用这些对象时才进行加载...

    hibernate 中的lazy属性祥解.txt

    `lazy`属性是Hibernate中用于控制数据加载策略的一个关键参数,主要用于延迟加载关联对象。当一个对象被加载时,与其关联的对象不一定立即加载到内存中,而是等到真正需要使用时才加载,这就是懒加载(Lazy Loading...

    HIBERNATE检索策略

    这是HIBERNATE默认的抓取策略,当一个实体被加载时,与之关联的实体或集合并不会立即加载,而是采用延迟加载(Lazy Loading)的方式。当第一次访问关联实体或集合时,HIBERNATE会额外发送一条SELECT语句来抓取数据,...

    hibernate在单端关联上的lazy策略

    标题中的“hibernate在单端关联上的lazy策略”指的是Hibernate框架中的一种对象关系映射(ORM)技术,用于优化数据加载效率。在Hibernate中,懒加载(Lazy Loading)是一种延迟加载策略,它允许我们在需要时才加载...

    hibernate抓取策略和懒加载案例

    在Java的持久化框架Hibernate中,数据访问优化是至关重要的,而抓取策略(Fetch Strategy)和懒加载(Lazy Loading)则是实现这一目标的关键技术。本文将深入探讨这两个概念,并通过具体的案例进行分析。 首先,让...

    day36 06-Hibernate抓取策略:set集合上的抓取策略

    默认情况下,Hibernate采用懒加载(Lazy Loading)策略,即只有当真正需要访问关联对象时,才会去数据库加载。但这种策略可能导致大量的N+1查询问题,尤其是在处理集合时尤为明显。为了解决这个问题,Hibernate提供...

    Hibernate延时加载与lazy机制.doc

    Hibernate的延迟加载(Lazy Loading)和懒加载机制(Lazy Initialization)是优化ORM框架性能的重要策略。这个机制的主要目的是提高程序的效率,减少不必要的数据库交互,只在真正需要数据时才去加载它们。以下是对...

    当设置lazy=true时,怎样使用extjs和Hibernate

    当我们设置Hibernate中的实体属性`lazy=true`时,这是懒加载(Lazy Loading)机制的体现。懒加载是一种优化策略,它允许我们在需要时才加载关联的对象,而不是在初始加载实体时就加载所有关联数据,从而提高性能。 ...

    Hibernate Fetch 的作用

    默认情况下,Hibernate使用Lazy策略,这意味着关联对象不会立即加载,除非显式访问它们。这有助于提高应用程序的性能,因为不必要的数据不会被加载到内存中。 #### 2. Lazy与Fetch结合的场景分析 在提供的代码示例...

    day36 07-Hibernate抓取策略:many-to-one上的抓取策略

    今天我们要讨论的是Hibernate框架中的一个关键概念——抓取策略,特别是针对"many-to-one"关系的抓取策略。这篇博客将深入剖析这个主题,帮助你更好地理解和应用Hibernate。 Hibernate是Java领域中最流行的对象关系...

    hibernate5--4.检索方式及策略

    2. **Lazy Loading**: 默认情况下,Hibernate采用懒加载策略,只有在实际访问关联对象时才会发起数据库查询。这有助于提高性能,因为不是所有的关联数据都立即加载。 3. **Eager Loading**: 相反于懒加载,急加载会...

    Hibernate的检索策略

    ### Hibernate的检索策略详解 #### 一、概述 在Java持久化框架Hibernate中,检索策略是一种重要的机制,它主要用于控制对象何时以及如何加载到应用程序内存中。合理的检索策略不仅可以提高应用性能,还能简化代码...

    hibernate懒加载策略.doc

    在Java持久化框架Hibernate中,懒加载(Lazy Loading)是一种优化策略,用于提高应用程序的性能和效率。懒加载的基本思想是“按需加载”,即在实际需要数据时才进行数据库查询,而不是在对象初始化时一次性加载所有...

    hibernate面试题2

    【hibernate面试题2】涉及了许多关于Hibernate框架的核心知识点,包括检索策略、SQL日志显示、缓存策略以及Hibernate与其他技术(如Spring和Struts)的整合。下面将逐一详细解析这些概念。 1. **Hibernate检索策略*...

    Hibernate 经典例子全

    在`hibernate_fetch_1`示例中,我们了解到Hibernate的加载策略,包括Eager Fetching(即时加载)和Lazy Fetching(延迟加载)。即时加载会在查询时一起加载关联的对象,而延迟加载则只在真正需要时才执行数据库查询...

Global site tag (gtag.js) - Google Analytics