HQL的特点如下:
1、关键字不区分大小写
如在HQL中from与From或FROM为同一关键字,但是对类名来说严格区分大小写。如ClassA和Classa是两个不同的类。
2、自动引入持久类
在HQL语句中Hibernate有持久化类自动引入的功能,如果代码中已经引入持久类,且其名无歧义,则该类名中可以省略包名部分。
3、同时查询多个持久化类
from子句之后可以跟多个类名,类名之间用“,”分割,表示要在多个持久类中查询。如,使用from Product,Category查询的结果是Product类所对就的表和Category所对应的表的笛卡尔积。
4、持久化类的继承查询
在持久化类时Hibernate会自动判定持久化类之间的继承关系,如果查询的类是某个类的父类,则返回会返回与父类及其子类所对应的所有表的数据。