如何从hibernate中的查询直接获取集合或数组? [英] How to get set or array directly from query in hibernate?
本文介绍了如何从hibernate中的查询直接获取集合或数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
<$ c $在hibernate的查询类中只能看到list方法,如何直接从hibernate的查询中获取set或array? c> Query q = session.createQuery(from com.daasl.Person);
列表< Person> l = q.list();
有没有一种方法可以直接取代set或array?
解决方案
查询
只能返回一个列表。
但是,您可以使用 toArray(T [] a)的Java标准集合界面
Query q = session.createQuery(from com.daasl.Person);
列表< Person> personList = q.list();
Person [] personArray = personList .toArray((Person [])Array.newInstance(Person.class,personList .size()));
要将列表转换为集合,只需将列表提供给HashSet的构造函数
Set< Person> personSet = new HashSet< Person>(personList);
As i can see only list method in query class in hibernate.How to get set or array directly from query in hibernate?
Query q = session.createQuery("from com.daasl.Person");
List<Person> l = q.list();
Is there a way i can get set or array directly instead of list?
解决方案
Query
can only return a list .
But you can convert the generic list to the generic array using the toArray(T[] a) of the java standard Collection interface
Query q = session.createQuery("from com.daasl.Person");
List<Person> personList = q.list();
Person[] personArray = personList .toArray((Person[])Array.newInstance(Person.class, personList .size()));
To convert the list to a set , just supply the list to the constructor of the HashSet
Set<Person> personSet = new HashSet<Person>(personList);
这篇关于如何从hibernate中的查询直接获取集合或数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文