51CTO下载-hibernate_HQL教程

51CTO下载-hibernate_HQL教程

ID:37259785

大小:353.00 KB

页数:26页

时间:2019-05-20

51CTO下载-hibernate_HQL教程_第1页
51CTO下载-hibernate_HQL教程_第2页
51CTO下载-hibernate_HQL教程_第3页
51CTO下载-hibernate_HQL教程_第4页
51CTO下载-hibernate_HQL教程_第5页
资源描述:

《51CTO下载-hibernate_HQL教程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Hibernate中HQL语句1.1HQL基础21.1.1默认数据库表和数据21.1.2检索类的所有对象41.1.3检索类的某几个属性51.1.4指定别名51.1.5where条件子句51.1.6使用distinct过滤掉重复值61.1.7删除对象61.1.8更新对象值71.1.9查询计算属性值71.1.10使用函数81.1.11between...and...和notbetween...and...确定查询范围81.1.12in和notin确定查询集合81.1.13like进行模糊查询81.1.14and逻辑与91.1.15or逻辑或91.1.16orderby对结果进行排序101.1.

2、17groupby对记录进行分组101.1.18having关键字111.1.19聚集函数111.2HQL进阶121.2.1查询类及其所有继承的类的实例121.2.2限制每次查询的返回对象数121.2.3绑定参数141.2.4在映射文件配置HQL语句151.3HQL的嵌套子查询151.3.1嵌套子查询的概念151.3.2带有IN谓词的子查询161.3.3比较子查询161.3.4带有ANY或ALL的子查询171.4HQL的多表查询171.4.1表之间的关联关系171.4.2表中的数据181.4.3修改持久化类191.4.4在映射文件中加入关联信息201.4.5左外连接211.4.6左外抓取连

3、接231.4.7右外连接241.4.8内连接241.4.9抓取内连接25Hibernate中HQL语句本章介绍了Hibernate的几种主要检索方式:HQL检索方式、QBC检索方式、SQL检索方式。HQL是HibernateQueryLanguage的缩写,是官方推荐的查询语言。QBC是QueryByCriteria的缩写,是Hibernate提供的一个查询接口。Hibernate是一个轻量级的框架,它允许使用原始SQL语句查询数据库。1.1HQL基础HQL是Hiberante官方推荐的Hibernate检索方式,它使用类似SQL的查询语言,以面向对象的方式从数据库中查询。可以使用HQL查

4、询具有继承、多态和关联关系的数据。在检索数据时应优先考虑使用HQL方式。1.1.1默认数据库表和数据在讲解本章时,在没有特殊说明时,用到的数据库均为joblog,也就是在第4章建立的数据库。joblog中添加了3个表:学生表student、课程表course和选课表sc。学生表student中各字段的结构如图6-1所示,字段的中文含义在Comment列中。图6-1学生表的数据结构学生表student中的数据如图6-2所示,没有特殊说明时,用到的均为这6条记录。此处仍然使用在第4章建立的HibernateProject项目,但是这里新建了一个包hibernate.ch06,这个包存放本章中的

5、所有代码。在hibernate.ch06包中建立学生表对应的持久化类Student.java,代码如下。图6-2学生表中的数据packagehibernate.ch06;//学生类publicclassStudent{privateIntegerid;//对象标识符privateIntegersno;//学号privateStringsname;//姓名privateStringssex;//性别privateStringsdept;//所在系别privateIntegersage;//年龄privateStringsaddress;//籍贯……//省略了所有的get/set访问器}课程表

6、course中的各个字段的结构如图6-3所示,字段的中文含义在Comment列中。图6-3课程表的结构课程表中的数据如图6-4所示,如果没有特殊说明,用到的均为这4条记录。图6-4课程表的数据在hibernate.ch06中新建持久化类Course.java类,代码如下。packagehibernate.ch06;//课程类publicclassCourse{privateIntegerid;//对象标识符privateIntegercno;//课程号privateStringcname;//课程名privateIntegerCcredit;//学分……//省略了get/set访问器}选修

7、表sc(sc为student-course的缩写)的结构如图6-5所示,字段的中文含义在Comment列中。图6-5选修表的结构选修表中的数据如图6-6所示,没有特殊说明时,用到的均为这5条记录。图6-6选修表的数据在hibernate.ch06中新建持久化类SC.java,SC.java的代码如下。packagehibernate.ch06;//选课类publicclassSCimplementsjava.io.Ser

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。