2012-04-19 8 views
0

こんにちは私は、ユーザが選択したチェックボックスに基づいて、私はハイバネートにクエリを書いて、選択されたチェックボックスフィールドだけ戻ってuser.forに表示する私はUIのページで10のチェックボックスを持っています。ユーザーが5,7,4つのチェックボックスフィールドを選択した場合、コントローラにリクエストを送信し、選択されたチェックボックスフィールドだけを取得します。これはどのようにしてハイバネートクエリを書くことができますか?私を示唆することができます。事前hibernateで選択されたチェックボックスのクエリのみを書く方法

+0

これは、私たちのテーブル構造とハイバーネイトマッピングに依存します。 1つのアプローチは動的HQL(またはSQL)クエリを構築することであり、もう1つはすべての値を返し、コントローラがdisplayd値をフィルタリングすることです。あなたは何を試しましたか? – andih

答えて

0

でのおかげであなたはにあなたが整数

List<Integer> checkedList = .....; 

String hql = "from Entity where property in (:properties)"; 
Query query = session.createQuery(hql); 
query.setParameterList("properties", checkedList); 

//get the result as and use it as per use case 
List entityList = query.list(); 

あなたはまた、基準を評価することができますAPI

Restrictions.in(conditionColumnName, conditionColumnValues) 
//conditionColumnValues is a collection 

のリストとしてチェックボックスを選択しますと仮定

を次のようにHQL を使用することができますお役に立てれば !!!!!

関連する問題