2009-11-26 33 views
0

我試圖在HQL的查詢看到,如果一個人的ID是預定義的ID列表的預定義列表搜索對象的屬性。使用HQL

例如,我想找到具有ID 1或2個數據庫中的所有的人。

的問題是,我不能做:從人的人其中id中的元素(:IDS),因爲元件期望的標識符(如person.childIds例如),而不是一個命名參數。

有沒有辦法做到這一點,而不訴諸解析解列表和手動創建的字符串?

謝謝。

回答

1

所有你需要做的是設置一個集合中的查詢。

query.setParameterList("userIds", new Integer[] {1,2}); 

然後在查詢

FROM User WHERE id IN (:userIds) 
+0

它的工作原理,如果刪除元素...謝謝! – Rafael 2009-11-26 18:23:09

+0

這就是我的想法,它看起來像你非常接近......但我提出了一個完整的答案,因爲我今天早些時候從我那裏接受了一個接受。 祝你好運! – Zoidberg 2009-11-26 18:25:20