`

HQL中fetch解释

阅读更多

在我们查询Parent对象的时候,默认只有Parent的内容,并不包含childs的信息,如果在Parent.hbm.xml里设置lazy="false"的话才同时取出关联的所有childs内容. 问题是我既想要hibernate默认的性能又想要临时的灵活性该怎么办? 这就是fetch的功能。我们可以把fetch与lazy="true"的关系类比为事务当中的编程式事务与声明式事务,不太准确,但是大概是这个意思。总之,fetch就是在代码这一层给你一个主动抓取得机会.

分享到:
评论

相关推荐

    hql语句经典教程

    在HQL中,除了Java类和属性名称之外,查询语句本身对大小写不敏感。例如,`SeLeCT`、`sELEct`和`SELECT`都是等效的。然而,类的全限定名和属性名必须保持正确的大小写,如`org.hibernate.eg.Foo`不同于`org....

    HQL详解

    此外,`FETCH`连接允许在一个选择语句中同时初始化父对象及其关联的对象或集合,这对于处理集合特别有用。这可以替代映射文件中的外联接与延迟加载声明: ``` FROM Cat AS cat INNER JOIN FETCH cat.mate LEFT JOIN...

    hql语句大全hql语句大全

    HQL(Hibernate Query Language)是Hibernate框架中用于执行数据库操作的一种强大的查询语言。它提供了面向对象的语法,允许开发人员以一种接近于编程语言的方式进行数据访问,极大地简化了SQL语句的编写过程,提升...

    hibernate_hql.rar_HQL

    本篇文章将深入探讨HQL的使用、特点以及在实际项目中的应用。 首先,HQL是Hibernate提供的一个强大的查询工具,它允许开发者用类名和属性名来代替表名和列名,从而避免了直接操作SQL语句的繁琐。HQL支持基本查询、...

    常用的hql语句用法解析

    `fetch`连接允许在查询中初始化相关联的对象,例如`from Cat as cat inner join fetch cat.mate`,这在处理集合时特别有用,它可以替代映射文件中的外联接和延迟加载设置。但`fetch`连接不应在使用`scroll()`或`...

    03-HQL实用技术.pdf

    - 通常还需要指定`cascade`和`fetch`策略以控制关联行为。 **1.4 cascade属性和inverse属性的作用与区别** - **cascade属性**: - 用于定义是否将当前对象的操作级联到关联的对象上。 - 常见值有`CascadeType....

    HQL语言教程[归类].pdf

    HQL是Hibernate框架中用于检索和操作对象关系映射数据的强大工具,其语法和SQL有诸多相似之处,但设计理念和功能更为面向对象。 HQL在大小写敏感性上与SQL有所不同。除了Java类和属性名称要求严格区分大小写之外,...

    HQL连接查询和注解使用总结

    HQL支持多种连接查询方式,包括内连接、左外连接等,并且可以通过`fetch`关键字来明确指定关联级别的查询策略。 #### 各种连接查询详解 - **内连接(Inner Join)** - 语法:`[inner]join` - 描述:内连接只返回...

    hql增删改查

    HQL是一种面向对象的查询语言,用于在Hibernate框架中执行数据库操作。下面将详细阐述这些知识点: ### HQL 增删改查 #### 1. 获取当前会话 (getCurrentSession) 在Hibernate中,`getCurrentSession`方法用于获取...

    Hibernate Fetch 的作用

    在Hibernate查询语言(HQL)或原生SQL查询中,可以使用`Fetch`关键字来显式指定关联对象的加载。例如,在上面的代码片段中,通过`left outer join fetch parent.childs`语句,我们告诉Hibernate在加载`Parent`实体时...

    hibernate hql基本操作

    ### Hibernate HQL 基本操作详解 #### 一、HQL简介 HQL,即Hibernate Query Language,是Hibernate...以上是对给定文件中的“hibernate HQL基本操作”的详细解析,希望能够帮助读者更好地理解和掌握HQL的相关知识点。

    Hibernate注解方式、HQL查询

    hql = "from User u join fetch u.orders"; users = session.createQuery(hql).list(); ``` 在实际项目中,结合Hibernate的注解方式和HQL查询,开发者可以高效地处理数据库操作,降低了SQL编写的工作量,提高了代码...

    Hibernate_HQL大全

    5. **FETCH JOIN**:FETCH JOIN是HQL的一种特殊连接类型,用于优化查询性能,特别是在处理集合时。通过使用FETCH JOIN,可以一次性加载关联对象或集合,避免了多次查询数据库的问题,提高了数据加载效率。 6. **...

    Hibernate HQL.doc

    Hibernate HQL,全称为Hibernate Query Language,是Hibernate框架中用于对象关系映射(ORM)的查询语言。HQL的设计目标是提供一种面向对象的查询方式,使得开发者能够以类和对象的角度来操作数据库,而不是直接使用...

    hibernate 中HQL语句查询学习笔记

    ### Hibernate中HQL语句查询学习笔记 #### HQL基础 **HQL**(Hibernate Query Language)是Hibernate框架推荐使用的查询语言,它提供了一种面向对象的方式来查询数据库,支持多种复杂的查询操作,如继承、多态及...

    Hibernate查询语言(HQL)

    这种特性使得 HQL 成为了在 Hibernate 中执行数据查询的理想选择。 #### 二、HQL 的特点 - **面向对象的查询**:HQL 通过使用类名和属性名称来引用数据库中的实体,这种方式更接近于 Java 对象模型。 - **支持高级...

    hibernate的hql语句

    【hibernate的HQL语句】是Hibernate框架中用于操作数据库的重要组成部分,它是一种面向对象的查询语言,类似于SQL,但更加强调对象的概念。HQL能够处理复杂的对象关系,如继承、多态和关联,使得在进行SSH(Spring、...

    hql语句语法详解hql语句

    HQL(Hibernate Query Language)是一种面向对象的查询语言,它提供了灵活而强大的机制来查询数据库中的数据,并将其映射到Java对象上。本篇文章将根据给定的信息深入探讨HQL的基本语法结构及其使用方法。 #### 1. ...

    HQL Hibernate查询语言

    HQL(Hibernate Query Language)是 Hibernate 中的一种强大的查询语言,它看起来很像 SQL,但是不要被语法结构上的相似所迷惑,HQL 是非常有意识的被设计为完全面向对象的查询,它可以理解如继承、多态和关联之类的...

    Hibernate 经常用的一些HQL语句

    - **级联加载**:`String hql = "from Menu m join fetch m.roles r join fetch r.users u where u.userLoginName=?";` 通过`join fetch`一次性加载多个关联表的数据。 ### 小结 HQL提供了丰富的查询语法,能够...

Global site tag (gtag.js) - Google Analytics