2012-03-26 45 views
2

我使用Hibernate存储和检索数据库中的Java实体。Hibernate:构建唯一字符串列表 - 不是实体

我需要建立(用于创建网页'下拉菜单'/'查找')一个唯一字符串列表。

注意:我真的不想在这里取回实体 - 我想运行相当于SQL的SELECT DISCTINCT(column)FROM table;'并找回一个字符串列表。

有没有一个标准的Hibernate成语为此 - 或者我应该使用另一种机制?

回答

6

Hibernate查询支持该查询,您可以使用hql或本地查询来获取String。

Query query = session.createQuery("select distinct user.firstname from User as user"); 

Query query = session.createNativeQuery("select distinct user.firstname from User user"); 

List<String> list = (List<String>) query.list(); 

参考:Hibernate Query