2010-10-19 45 views
1

我打算用Hibernate創建一個依賴於數據庫的應用程序。我會有一些類似老師和學生的班級等等。在數據庫中,他們將有一些名稱相似的字段。所以我想知道如果我可以創建一個帶有名稱,SName等標準字段的註釋的人類,以便在教師學生中擴展該類,等等。它會起作用嗎?有人用這種方式嗎?關於Java和Hibernate註釋中的抽象類

回答

3

我認爲教師和學生不是人類的亞類,而是人類可以扮演的角色。如果你讓他們成爲亞類,那麼你實際上就是說老師永遠不會是學生,反之亦然。 另外,如果一個人從一個學生變成了一個老師(反之亦然),那麼你就失去了該對象的任何關聯和歷史。 改爲考慮角色。在這個例子中考慮組合和委派,而不是繼承。 請看Peter Coad的書:Java Design瞭解更多。如果您決定使用繼承:單個表(對於子類型attribs使用空cols)對於超類使用單獨的表或單個表,對於子類使用不同的表。

+0

加入表格對我來說是一個真正的問題 - 我想使用Google應用引擎... – Rella 2010-10-19 17:30:57