1 / 9
文档名称:

HQL 查询语句.doc

格式:doc   大小:97KB   页数:9页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

HQL 查询语句.doc

上传人:xgs758698 2016/8/15 文件大小:97 KB

下载得到文件列表

HQL 查询语句.doc

文档介绍

文档介绍:HQL 查询语句 HQL 查询: Criteria 查询对查询条件进行了面向对象封装,符合编程人员的思维方式,不过 HQL(Hibernate Query Lanaguage) 查询提供了更加丰富的和灵活的查询特性, 因此 Hibernate 将 HQL 查询方式立为官方推荐的标准查询方式, HQL 查询在涵盖 Criteria 查询的所有功能的前提下, 提供了类似标准 SQL 语句的查询方式, 同时也提供了更加面向对象的封装。完整的 HQL 语句形势如下: Select/update/delete …… from …… where …… group by …… having …… order by …… asc/desc 其中的 update/delete 为 Hibernate3 中所新添加的功能,可见 HQL 查询非常类似于标准 SQL 查询。由于 HQL 查询在整个 Hibernate 实体操作体系中的核心地位, 这一节我将专门围绕 HQL 操作的具体技术细节进行讲解。 1、实体查询: 有关实体查询技术, 其实我们在先前已经有多次涉及, 比如下面的例子: String hql= ” from User user ”; List list=(hql).list(); 上面的代码执行结果是,查询出 User 实体对象所对应的所有数据, 而且将数据封装成 User 实体对象, 并且放入 List 中返回。这里需要注意的是, Hibernate 的实体查询存在着对继承关系的判定, 比如我们前面讨论映射实体继承关系中的 Employee 实体对象,它有两个子类分别是 HourlyEmployee , SalariedEmployee, 如果有这样的 HQL 语句: “ from Employee ”, 当执行检索时 Hibernate 会检索出所有 Employee 类型实体对象所对应的数据(包括它的子类 HourlyEmployee , SalariedEmployee 对应的数据)。因为 HQL 语句与标准 SQL 语句相似, 所以我们也可以在 HQL 语句中使用 where 字句, 并且可以在 where 字句中使用各种表达式, 比较操作符以及使用“ and ”,” or”连接不同的查询条件的组合。看下面的一些简单的例子: from User user where =20; from User user where between 20 and 30; from User user where in(20,30); from User user where is null; from User user where like ‘%zx% ’; from User user where (%2)=1; from User user where =20 and like ‘%zx% ’; 2、实体的更新和删除: 在继续讲解 HQL 其他更为强大的查询功能前,我们先来讲解以下利用 HQL 进行实体更新和删除的技术。这项技术功能是 Hibernate 3 的新加入的功能,在