首页 > 代码库 > HQL属性查询语法?

HQL属性查询语法?

上面的HQL:”from Street” ,将取出Steet的所有对象记录,对应的SQL语句为”select * from street”
在Hibernate中执行查询的时候,如果实体存在继承关系,将会进行继承关系判定,如:“from Street”将返回所有Street以及Street子类的记录
假设:系统中存在Street的两个子类StreetA和StreetB,那么from Street
返回的记录将包含这两个子类的所有数据,即使StreetA和StreetB分别对应了不同的库表
资料:Java中所有的类的基类都是java.lang.Object,那么,使用from java.lang.Object将返回数据库中所有库表的记录。

5.属性查询语法?
有时我们并不需要获取完整的实体对象,在前面我们使用sesison.get()方法或者load()方法加载User对象,但获得的User对象包含整个表的全部信息,而我们需要的数据如果仅仅是一个列,如名字字段
也就是需要的数据只是实体对象的某个属性,HQL也可以简单的做到
String hql =“select s.name from Street s”;
List.get(0).getClass()
对于实体单个属性的查询,Hibernate返回的对象都是该属性的类型。

HQL属性查询语法?