尽管Hibernate支持直接使用Native SQL,但是在Hibernate中使用HQL进行数据查询不仅可以避免不同数据库之间的差异性,而且还可以结合Hibernate缓存机制为Hibernate应用获取更好的性能,同时HQL的语法要比SQL更为简洁。

HQL的特点如下:

1、关键字不区分大小写
   如在HQL中from与From或FROM为同一关键字,但是对类名来说严格区分大小写。如ClassA和Classa是两个不同的类。

2、自动引入持久类
   在HQL语句中Hibernate有持久化类自动引入的功能,如果代码中已经引入持久类,且其名无歧义,则该类名中可以省略包名部分。

3、同时查询多个持久化类
  from子句之后可以跟多个类名,类名之间用“,”分割,表示要在多个持久类中查询。如,使用from Product,Category查询的结果是Product类所对就的表和Category所对应的表的笛卡尔积。

4、持久化类的继承查询
   在持久化类时Hibernate会自动判定持久化类之间的继承关系,如果查询的类是某个类的父类,则返回会返回与父类及其子类所对应的所有表的数据。

转载于:https://blog.51cto.com/wujuxiang/403675

Hibernate HQL基础相关推荐

  1. Hibernate HQL基础 投影查询

    HQL中投影查询即查询一个持久化类的一个或多个属性值(不包括全部属性值),则需要使用HQL的select子句. 1.查询持久化对象的单一属性值    为查询持久化对象的一个属性值,在select子句后 ...

  2. Hibernate HQL基础 限定查询条件(这里面有各种条件查询)

    在HQL中可以使用表达式完成指定的运算或者作为限制查询结果的条件.如下表所示 |-----------------------------------------------------------| ...

  3. Hibernate HQL基础 调用数据库存储过程

    在Hibernate中也可以通过SQLQuery对象调用数据库的存储过程,但是要求存储过程必须返回一个结果集. 如在Oracle数据库的一个存储过程为: CREATE OR REPLACE PROCE ...

  4. org.hibernate.hql.ast.QuerySyntaxException: ? is not mapped

    2010-5-3 21:48:23 org.apache.catalina.core.StandardWrapperValve invoke 严重: Servlet.service() for ser ...

  5. Hibernate 学习笔记(二)—— Hibernate HQL查询和 QBC 查询

    目录 一.Hibernate 的 HQL 查询 1.1.查询所有数据 1.2.条件查询 1.3.排序查询 1.4.统计查询 1.5.分页查询 1.6.投影查询 二.Hibernate 的 QBC 查询 ...

  6. Hibernate hql 查询指定字段并获取结果集

    Hibernate hql 查询指定字段并获取结果集 在hibernate中,用hql语句查询实体类,采用list方法的返回结果为一个List,该List中封装的对象分为以下三种情况: 1.查询全部字 ...

  7. weblogic10异常:org.hibernate.hql.ast.HqlToken

    今天部署应用到WLS10上,在运行过程中出现 ClassNotFoundException: org.hibernate.hql.ast.HqlToken 错误weblogic异常退出. GOOGLE ...

  8. (转)Hibernate框架基础——一对多关联关系映射

    http://blog.csdn.net/yerenyuan_pku/article/details/52746413 上一篇文章Hibernate框架基础--映射集合属性详细讲解的是值类型的集合(即 ...

  9. org.hibernate.hql.ast.QuerySyntaxException: myaddressbook is not mapped

    用hibernate查询 显示如下信息: org.hibernate.hql.ast.QuerySyntaxException: myaddressbook is not mapped. [from ...

  10. ERROR org.hibernate.hql.internal.ast.ErrorCounter unexpected token: form 异常解决

    ERROR org.hibernate.hql.internal.ast.ErrorCounter unexpected token: form 异常解决 参考文章: (1)ERROR org.hib ...

最新文章

  1. spring boot构建基础版web项目(一)springboot、thymeleaf控制层基础构
  2. ASP.NET 快乐建站系列 -- 1. 十五分钟建立精美网站
  3. 和低压电气有关的71个问题
  4. 久坐的危害和解决方式
  5. LeetCode Week 1:第 1 ~ 10 题
  6. 经典Hello Word窗口表示,可视化编程入门。
  7. VC6 程序 在VS2019或其他高版本上编译运行
  8. 防火墙转发流量的原理
  9. 如果大一光靠自己学,华为HICE能过的几率大吗?
  10. linux查看内存使用情况top详解
  11. 本地网页html如何修改,如何修改网页源代码
  12. 谈阿里云云效 DevOps | DevOps 不再只是 Jenkins
  13. Matlab求解黎卡提方程
  14. EAN-13 条形码编程示例
  15. 漫谈程序员系列 软件开发的十八般乐趣
  16. ubuntu更新镜像源
  17. windows防火墙 程序_如何允许应用程序通过Windows防火墙进行通信
  18. oracle 表在线重建,大表在线重建索引的考虑和碰到的限制问题-ORA-1450
  19. 【Linux】工具使用
  20. pycharm 在 Clash模式下无法联网的解决办法

热门文章

  1. 可以让你少奋斗十年的工作经验(转)
  2. 运行出现Server Tomcat v8.5 Server at localhost failed to start.和A child container failed during start...
  3. asp.net core 系列 5 MVC框架路由(上)
  4. python可迭代对象和迭代器的理解
  5. C# -- 使用FileInfo获取文件信息
  6. HashMap 的数据结构
  7. html5新增标签/删除标签
  8. IntelliJ IDEA 创建 maven 创建java web 项目
  9. 深入理解JVM虚拟机(一):JVM运行时数据区
  10. 《python基础教程》笔记之 字符串