`
wlh269
  • 浏览: 453313 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

HQL (八) 对象导航查询

阅读更多
对象导航查询,在hql中采用.进行导航(重要)
参见:ObjectNavQueryTest.java

package com.wlh.hibernate;

import java.util.Iterator;
import java.util.List;

import org.hibernate.Session;

import junit.framework.TestCase;

public class ObjectNavQuery extends TestCase {

	
	public void testQuery1() {
		Session session = null;
		try {
			session = HibernateUtils.getSession();
			session.beginTransaction();
			[color=red]//s.classes.name就是导航
//s.classes从Student导航到Class,因为Student中持有Class的引用private Classes classes;[/color]			
List students=session.createQuery("select s.name from Student s where s.classes.name=?")
					.setParameter(0, "班级1")
					.list();
			for(Iterator iter=students.iterator();iter.hasNext();){
				String o=(String)iter.next();
				System.out.println("name="+o);
			}
			session.getTransaction().commit();
		}catch(Exception e) {
			e.printStackTrace();
			session.getTransaction().rollback();
		}finally {
			HibernateUtils.closeSession(session);
		}
	}	
}

分享到:
评论

相关推荐

    Hibernate查询语言HQL.PPT

    它提供了灵活多样的查询机制,包括导航对象图、通过标识符检索、使用 HQL 检索对象、使用 Hibernate 条件 API 和使用本地 SQL 查询等。 在 Hibernate 中检索对象的各种方法: 1. 导航对象图:通过对象的关联关系,...

    精通HQL(word格式)

    4. **对象导航**:通过对象关系,HQL可以方便地进行关联查询,无需关心底层的表连接操作。 总之,HQL作为Hibernate的重要组成部分,为开发者提供了强大且灵活的数据检索能力,使得在Java应用中操作数据库变得更加...

    Hibernate-HQL-查询-Query资料

    在Hibernate中,HQL(Hibernate Query Language)是专为ORM设计的一种面向对象的查询语言,它允许开发者以类和对象的方式进行数据查询,而不是直接使用SQL。本资料主要涵盖了Hibernate HQL查询的基本概念、语法以及...

    Hibernate中HQL语句的使用[参考].pdf

    Hibernate中HQL语句的使用 ...HQL语句可以用于各种查询场景,包括简单属性查询、多个属性的查询、使用别名、实体对象查询、外置命名查询、查询过滤器、分页查询、对象导航查询、连接查询和统计查询等。

    hibernate查询语句--HQL

    HQL 是一种面向对象的查询语言,它支持标准 SQL 的大部分功能,并添加了一些额外的功能,如对象导航、集合投影等。本文将深入探讨 HQL 的几个关键方面,包括基本的查询语法、连接操作以及聚合函数等。 #### 基本...

    hql语句[定义].pdf

    在上述例子中,`o.products`就是通过`Order`对象导航到其关联的`Product`集合。 ### 示例应用 在实际开发中,HQL常用于ORM(Object-Relational Mapping)框架中,简化数据库操作,使得代码更加面向对象。例如,从`...

    HibernateHQL实现前台翻页

    HQL是Hibernate提供的SQL的面向对象版本,用于查询对象而非表。在实现翻页功能时,HQL可以帮助我们更方便地进行复杂的数据查询。 1. **理解HQL**: HQL允许开发者以类和对象的方式编写查询语句,它支持SELECT、...

    hibernate查询详细代码讲解

    本节我们将深入探讨Hibernate中的HQL(Hibernate Query Language)查询,这是一种专为Hibernate设计的面向对象的查询语言,类似于SQL但更贴近于Java程序员的思维。 首先,HQL查询的基本语法结构与SQL类似,但对象化...

    java-Hibernate 检索

    导航对象图检索是根据已经加载的对象导航到其他对象。例如,已经加载了 Customer 对象,通过 getOrders() 方法可以获取该 Customer 对象关联的 Order 集合。Hibernate 会自动检索 Order 数据。 Customer c = ...

    hibernate查询缓存1

    2. **对象导航查询**:利用对象间的关联关系,通过已知对象的引用去获取相关联的对象。 3. **HQL(Hibernate Query Language)查询**:这是一种面向对象的查询语言,类似于SQL,但更符合面向对象的思维方式。HQL...

    SSh sql/hql 分页

    - **使用HQL进行分页查询**: ```java Session session = getHibernateTemplate().getSessionFactory().getCurrentSession(); Query query = session.createQuery("from YourEntity e"); query.setFirstResult(...

    第八章 Hibernate分页

    HQL是Hibernate提供的面向对象的查询语言,类似于SQL。在HQL中,分页查询可以通过`setFirstResult()`和`setMaxResults()`方法实现,与Criteria API类似: ```java Session session = sessionFactory.openSession();...

    JSP开发中hibernate框架的常用检索方式总结

    对象导航检索:根据某个对象导航查询与该对象关联的对象数据 HQL检索:通过query接口对象查询 QBC检索:通过criteria接口对象查询 SQL检索:通过SQL语句查询  2、HQL检索方式: 查询全部数据:session....

    Hibernate检索方式

    在Hibernate中,提供了多种检索对象的方式,包括但不限于导航对象图检索方式、OID检索方式、HQL检索方式、QBC检索方式以及本地SQL检索方式。 #### 二、具体检索方式介绍 ##### 1. 导航对象图检索方式 导航对象图...

    Hibernate详解2

    1. **导航对象图检索**:这是最直观的方式,通过已加载的对象导航到与之关联的其他对象,无需直接执行查询。 2. **OID检索**:根据对象的唯一标识(OID,Object Identifier)来获取对象,通常适用于已知对象ID的情况...

    hibernate学习笔记

    此外,HQL还支持数据库函数和对象导航查询,能方便地处理关联关系,例如内连接、左连接和右连接。 在处理集合时,Hibernate提供了方便的方法,如`list()`,可以将查询结果转化为Java集合对象。HQL的这种面向对象的...

    hibernate分页查询功能

    使用Session的`createQuery(String hql)`方法创建Query对象,然后设置查询参数,通过`setFirstResult(int firstResult)`设置开始位置(即offset),`setMaxResults(int maxResults)`设置每页大小(即length)。...

    常见hibernate面试题

    - 导航对象图查询:通过对象之间的关联关系直接获取数据。 - OID 查询:基于对象标识符(Object Identifier)查找对象。 - HQL(Hibernate Query Language):面向对象的查询语言,类似于SQL,但操作对象而非表格...

Global site tag (gtag.js) - Google Analytics