2009.11.23——Hibernate(3) hql
inner join 内连接
hql:from Student s inner join s.course c
sql: select s.id,s.name,c.id,c.name from student s,course c on s.course.id=c.id
注意:form Student s inner join s.course c
这个hql语句,将会返回一个包含有Student和Course对象的数组,如下:
String hql="from Student s inner join s.course c ";
Query query=session.createQuery(hql); //创建查询
List list=query.list(); //执行查询
Iterator it=list.iterator();
while(it.hasNext()){
Object[] obj=(Object[])it.next();
Student stu=(Student)obj[0];
Course course=(Course)obj[1];
System.out.println("*********学生信息及其选课信息******************");
if(course!=null){
System.out.println(stu.getSno()+"\t"+stu.getSname()+"\t"+
"课程:"+course.getCname());
}else{
System.out.println(stu.getSno()+"\t"+stu.getSname()+"\t");
};
}
left outer join 左外连接
hql:select distinct s from Student s left outer join s.course c
sql: select s.id,s.name from student s left outer join course c on s.course.id=c.id
左外连接,以左边的为中心,右边的的补空值,这个可以显示 没有选课的学生的信息
right outer join 右外连接
hql: select c from Student s right outer join s.course c
sql: select c.id,c.name from studnet s right outer join course c on s.course.id=c.id
右外连接,以右边的为中心,左边的补空值,这个可以显示 没有学生选的课程信息
分享到:
相关推荐
### WebLogic 12下org.hibernate.hql.ast.HqlToken冲突解决方案 在使用WebLogic 12部署应用程序时,可能会遇到与`org.hibernate.hql.ast.HqlToken`相关的异常问题。这种异常通常与Hibernate版本之间的不兼容性有关...
在本问题中,我们遇到了一个特定的错误,即“weblogic10.3 org.hibernate.hql.ast.HqlToken报错”,这涉及到Hibernate ORM框架和其在WebLogic上的运行。让我们深入探讨这个问题,以及可能的解决方案。 首先,`org....
对hibernate的hql进行了详尽的讲解
这个`hibernate3.zip`压缩包包含了`hibernate3.jar`,它是Hibernate 3版本的核心库,包含了执行ORM(对象关系映射)所需的所有类和接口。 在Java开发中,Hibernate3主要提供了以下关键知识点: 1. **对象关系映射...
本篇文档将深入探讨Hibernate中的HQL(Hibernate Query Language),一种面向对象的查询语言,它提供了与SQL类似的语法,但更贴近于面向对象的思维模式,使得开发者可以更加便捷地进行数据查询。 一、HQL简介 HQL是...
Hibernate3引入了许多增强功能,如Criteria查询、HQL(Hibernate Query Language)以及对JPA(Java Persistence API)的支持,提供了更丰富的查询方式和更高的灵活性。 hibernate3.jar是主要的Hibernate库文件,...
3. 使用 HQL 检索对象:使用 Hibernate 查询语言 HQL 检索对象。 4. 使用 Hibernate 条件 API:提供了类型安全的面向对象的方式执行查询。 5. 使用本地 SQL 查询:Hibernate 只关心把 JDBC 结果集映射到持久对象图。...
hibernate3-hql.jar .
// 1.查询所有 // 2.条件查询(where、模糊匹配) // 3.范围查询(OR、IN、AND、NOT、>、<、、>=、、...———————————————— 原文链接:https://blog.csdn.net/qq_29001539/article/details/105154689
根据提供的文件信息,我们可以深入探讨Hibernate HQL(Hibernate Query Language)的相关知识点,特别是关于其查询功能、连接操作、条件过滤以及聚合函数的应用等。 ### Hibernate HQL简介 Hibernate HQL是一种...
**标题:“Hibernate HQL.zip_更新”** **正文:** Hibernate是一个开源的对象关系映射(ORM)框架,它为Java开发者提供了对数据库操作的强大抽象层。HQL(Hibernate Query Language)是Hibernate提供的一种面向...
#hibernate.query.factory_class org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory ################# ### Platforms ### ################# ## JNDI Datasource #hibernate.connection....
Hibernate HQL,全称为Hibernate Query Language,是Hibernate框架中用于对象关系映射(ORM)的查询语言。HQL的设计目标是提供一种面向对象的查询方式,使得开发者能够以类和对象的角度来操作数据库,而不是直接使用...
9. **查询语言HQL**:Hibernate提供了自己的查询语言——Hibernate Query Language(HQL),它是面向对象的,类似于SQL,但操作的是对象而不是表格。此外,Hibernate还支持 Criteria 查询和JPQL(Java Persistence ...
Hibernate Core是Hibernate框架的基础部分,它包含了ORM的核心功能,如实体管理、事务处理、查询语言(HQL)等。`5.0.11.Final`版本是一个稳定且广泛使用的版本,提供了诸多改进和优化。 二、源码结构解析 `...
《深入理解Hibernate HQL:Java数据库交互利器》 Hibernate,作为一款强大的对象关系映射(ORM)框架,极大地简化了Java开发者与数据库之间的交互。其中,Hibernate查询语言(HQL)是其核心特性之一,它为开发者...
hibernate源码中的hql语句代码,添加,删除,修改,查询;hibernate源码中的hql语句代码,添加,删除,修改,查询
Hibernate 提供了一种非常强大的查询语言——HQL(Hibernate Query Language),它在语法上与 SQL 类似但功能更为强大,因为它支持面向对象的特性,例如继承、多态性和关联等。 #### 二、HQL 的特点 1. **面向对象*...
- Criteria API:提供了一种更灵活、更类型安全的方式来执行查询,替代了传统的HQL(Hibernate Query Language)。 - Object-Relational Mapping:通过XML或注解方式定义实体类和数据库表之间的映射关系,实现对象...