2012-09-15 147 views
0

我使用JPA /休眠,MySQL和Spring Roo的,我的造型,將有兩種不同類型的會員的應用程序的過程:數據庫建模問題休眠

  • 男會員
  • 女成員

截至目前,我有男性和女性成員的一個表/實體。

但是,我現在意識到,根據會員是男性還是女性,某些字段/屬性會有所不同。

舉例來說,我可以有一個「鬍子風格」屬性對於將包含以下可能值的男人:「修剪」。

我想到了幾個選項在我的域模型來表示這樣的:

  1. 轉到了某種JPA繼承。但是,我不確定選擇哪種策略以及Hibernate支持哪種策略。
  2. 在我的會員表/實體中有兩個字段maleSpecificInfo和femaleSpecificInfo。如果該成員是女性,則maleSpecificInfo將爲空,反之亦然。

任何人都可以請提供意見,我可以選擇哪些,如果有的話,是可以接受的。或者提供一個更好的選擇?

回答

1

我不喜歡第二種方法。一個男性對象可能包含與FemaleSpecificInfo的關係,這對我來說很不好。我不認爲「構成繼承」的實施是正確的。

我想嘗試Hibernate繼承。你應該檢查strategies。如果男性和女性分享大部分數據,我會使用表每個類層次