2011-08-24 193 views
0

我有雙向多對一關係。當我從表中檢索父對象,所有子對象應該得到檢索但只有第一個是越來越檢索 父看起來像@ManyToOne關係,JPA

@Entity 
public class xyz{ 
@OneToMany(mappedBy="xyz",cascade=CascadeType.PERSIST,fetch=FetchType.EAGER) 
private Set<zyx> zyxDO;} 

的子類看起來像

public class zyx{ 
@ManyToOne 
@JoinColumn(name="id") 
private xyz xyzDO; 
} 

是有任何註釋可以檢索底層數據庫的所有行

+0

這是發生在所有記錄還是隻有一些? – Padmarag

回答

0

通過檢索底層數據庫的所有行,你是什麼意思?您只能檢索父母的密鑰集中的孩子。還要注意,提取渴望很容易導致很大的性能問題,因爲即使不需要它們,孩子也會被永遠提取。

2

也許它是一個拼寫錯誤,但mappedBy的值應該是擁有實體中指向逆實體的屬性的名稱,在本例中爲xyzDO。

也許因爲你使用的是一個集合而不是一個集合可能會導致只有一個孩子被檢索(如果它們是相同的)。

0

確保在添加/設置關係時設置關係的兩側。

相關問題