2012-03-26 12 views
2

Hibernateを使用してDBにJavaエンティティを格納および取得しています。Hibernate:エンティティではなく、ユニークな文字列のリストを作成します。

ウェブページのドロップダウン/ルックアップを作成するために、一意の文字列のリストを作成する必要があります。

NB:実際にはここでエンティティを取り戻したいとは思わない - SQLのSELECT DISCTINCT(column)FROMテーブルと同等のものを実行したい。文字列のリストを取得します。

これを行うための標準的な休止状態のイディオムがありますか、別のメカニズムを使用する必要がありますか?

答えて

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

関連する問題