查询部分属性
通常来说,都是针对 Entity 类的查询,返回的也是被查询的 Entity 类的实体。J P QL 也允许我们直接查询返回我们需要的属性,而不是返回整个 Entity 。在一些 Entity 中属性特别多的情况,这样的查询可以提高性能
例:
// 只 查询我们感兴趣的属性 ( 列 )
Query query=em.createQuery("select p.personid, p.name from Person p order by p.personid desc ");
// 集合中的元素不再是 Person, 而是一个 Object[] 对象数组
List result = query.getResultList();
if (result!=null){
Iterator iterator = result.iterator();
while( iterator.hasNext() ){
Object[] row = ( Object[]) iterator.next();
int personid = Integer.parseInt(row[0].toString());
String PersonName = row[1].toString();
。。。。
}
}