我在MySQL數據庫中有多個表。比方說,就像這樣:Hibernate註解和繼承
書:
title, subject, publisher, book_author
日報:
title, subject, publisher, journal_name
博客:
title, subject, website, blog_author
電子報:
title, subject, website, news_paper_name
具體結構無關的問題。實際上,所有表格共有大約20列,而對於少數或僅一個表格而言,這些列是獨一無二的。關鍵是,他們都分享一些專欄。我想使用Hibernate來訪問這些,使用帶註釋的類。我不想擁有5個以上的類,每個類都有20多個冗餘字段,每個類都有一個訪問器和增變器。我想一個階級結構是這樣的:
- 抽象
Publication
{標題,主題}- 抽象
PrintPublication
{出版商}Book
{:BOOK_AUTHOR}Journal
{JOURNAL_NAME}
- 抽象
Online Publicaiton
{網站}Blog
{blog_author}ENews
{news_paper_name}
- 抽象
但是,我不能爲了我的生活找出如何得到這個工作。每個具體類都是數據庫中的單個表。我認爲解決方案將是每個班級的表格(@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
),但是會引發一些有趣的錯誤。
什麼是適合所有這一切的解決方案?除了改變表格結構。該數據庫不是我的,我沒有被賦予改變它的權利。
絕對適合我的情況。非常感謝 :) –