2009-05-06 47 views
1

我正在從JPA數據存儲做一些奇怪的報告。如何選擇實體集合並使用EJBQL將其作爲參數傳遞給bean?

我需要選擇(使用EJBQL)對象列表。這些對象包含實體的集合。我有一個是通過構造一類:

FOOBean(String param1, 
    String param2, 
    List<Entity> listParam) 

(請注意,第三個參數是一個列表)

我想選擇這些豆子用GROUP BY的清單,以及獲取listParam,所以我想編寫一個這樣工作的查詢:

 SELECT new FOOBean(
       e1.param1, 
       e1.param2, 
       e1) 
       FROM Entity e1 
       GROUP BY e1.param1, e1.param2 

因此,將分組實體提取到列表中並插入到第三個參數中。是否可以這樣做,還是必須創建兩個查詢來選擇不同的param1param2對;並分別獲取具有適當參數值的所有實體?

回答

1

這是不可能的,至少在JPA 1.0中(我懷疑它在JPA 2.0中是不同的)。

+0

不幸的是,這是真的。 – 2012-05-20 13:55:07

0

我認爲根據您的條件檢索對象&然後在您的實體中使用@oneToMany annotaion來設置列表會更好。

相關問題