2011-08-22 69 views
0

我正在每個子類的表中使用休眠映射一些數據。通常在數據庫層,我會在抽象表中引入一個類型列,它是子表,這將強制抽象記錄只能與匹配類型的子記錄相關。然而,從各種資源看來,似乎表明休眠鑑別符用於遺留數據庫。這是否意味着我採取了錯誤的做法?休眠 - 我應該使用鑑別器嗎?

回答

2

Table Per(Sub)Class表示每個類有一個表,沒有抽象表。因此不需要鑑別器。如果你有Single Table或Joined繼承,那麼你需要一個鑑別器。

編輯:實際上,Hibernate的Table Per Subclass似乎是Joined繼承策略。但是,這是由文檔說明:

Hibernate的每個子類的表的實現不需要鑑別器列。