`

2009.11.23——Hibernate(3) hql

阅读更多
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
右外连接,以右边的为中心,左边的补空值,这个可以显示 没有学生选的课程信息
分享到:
评论

相关推荐

    weblogic12 下 org.hibernate.hql.ast.HqlToken

    ### WebLogic 12下org.hibernate.hql.ast.HqlToken冲突解决方案 在使用WebLogic 12部署应用程序时,可能会遇到与`org.hibernate.hql.ast.HqlToken`相关的异常问题。这种异常通常与Hibernate版本之间的不兼容性有关...

    weblogic10.3 org.hibernate.hql.ast.HqlToken报错问题

    在本问题中,我们遇到了一个特定的错误,即“weblogic10.3 org.hibernate.hql.ast.HqlToken报错”,这涉及到Hibernate ORM框架和其在WebLogic上的运行。让我们深入探讨这个问题,以及可能的解决方案。 首先,`org....

    Hibernate_HQL.rar_hibernate HQL_hibernate hql src

    对hibernate的hql进行了详尽的讲解

    hibernate3.zip 包含hibernate3.jar

    这个`hibernate3.zip`压缩包包含了`hibernate3.jar`,它是Hibernate 3版本的核心库,包含了执行ORM(对象关系映射)所需的所有类和接口。 在Java开发中,Hibernate3主要提供了以下关键知识点: 1. **对象关系映射...

    Hibernate-HQL.rar_HQL_hibernate hql

    本篇文档将深入探讨Hibernate中的HQL(Hibernate Query Language),一种面向对象的查询语言,它提供了与SQL类似的语法,但更贴近于面向对象的思维模式,使得开发者可以更加便捷地进行数据查询。 一、HQL简介 HQL是...

    hibernate3全部jar包:hibernate3.jar.zip 下载

    Hibernate3引入了许多增强功能,如Criteria查询、HQL(Hibernate Query Language)以及对JPA(Java Persistence API)的支持,提供了更丰富的查询方式和更高的灵活性。 hibernate3.jar是主要的Hibernate库文件,...

    Hibernate查询语言HQL.PPT

    3. 使用 HQL 检索对象:使用 Hibernate 查询语言 HQL 检索对象。 4. 使用 Hibernate 条件 API:提供了类型安全的面向对象的方式执行查询。 5. 使用本地 SQL 查询:Hibernate 只关心把 JDBC 结果集映射到持久对象图。...

    hibernate3-hql.jar

    hibernate3-hql.jar .

    Hibernate_HQL案例.zip

    // 1.查询所有 // 2.条件查询(where、模糊匹配) // 3.范围查询(OR、IN、AND、NOT、>、<、、>=、、...———————————————— 原文链接:https://blog.csdn.net/qq_29001539/article/details/105154689

    Hibernate HQL.txt

    根据提供的文件信息,我们可以深入探讨Hibernate HQL(Hibernate Query Language)的相关知识点,特别是关于其查询功能、连接操作、条件过滤以及聚合函数的应用等。 ### Hibernate HQL简介 Hibernate HQL是一种...

    HibernateHQL.zip_更新

    **标题:“Hibernate HQL.zip_更新”** **正文:** Hibernate是一个开源的对象关系映射(ORM)框架,它为Java开发者提供了对数据库操作的强大抽象层。HQL(Hibernate Query Language)是Hibernate提供的一种面向...

    hibernate.properties

    #hibernate.query.factory_class org.hibernate.hql.internal.classic.ClassicQueryTranslatorFactory ################# ### Platforms ### ################# ## JNDI Datasource #hibernate.connection....

    Hibernate HQL.doc

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

    hibernate-release-5.0.6.Final.zip(最新Hibernate架包)

    9. **查询语言HQL**:Hibernate提供了自己的查询语言——Hibernate Query Language(HQL),它是面向对象的,类似于SQL,但操作的是对象而不是表格。此外,Hibernate还支持 Criteria 查询和JPQL(Java Persistence ...

    hibernate-core-5.0.11.Final.jar

    Hibernate Core是Hibernate框架的基础部分,它包含了ORM的核心功能,如实体管理、事务处理、查询语言(HQL)等。`5.0.11.Final`版本是一个稳定且广泛使用的版本,提供了诸多改进和优化。 二、源码结构解析 `...

    hibernate_hql.rar_HQL

    《深入理解Hibernate HQL:Java数据库交互利器》 Hibernate,作为一款强大的对象关系映射(ORM)框架,极大地简化了Java开发者与数据库之间的交互。其中,Hibernate查询语言(HQL)是其核心特性之一,它为开发者...

    hql.rar_HQL_Hibernate查询_登录的hql代码

    hibernate源码中的hql语句代码,添加,删除,修改,查询;hibernate源码中的hql语句代码,添加,删除,修改,查询

    Hibernate HQL查询.docx

    Hibernate 提供了一种非常强大的查询语言——HQL(Hibernate Query Language),它在语法上与 SQL 类似但功能更为强大,因为它支持面向对象的特性,例如继承、多态性和关联等。 #### 二、HQL 的特点 1. **面向对象*...

    hibernate-release-5.0.7.Final.zip

    - Criteria API:提供了一种更灵活、更类型安全的方式来执行查询,替代了传统的HQL(Hibernate Query Language)。 - Object-Relational Mapping:通过XML或注解方式定义实体类和数据库表之间的映射关系,实现对象...

Global site tag (gtag.js) - Google Analytics