首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Hibernate是一个Java类和多个表的最佳方法吗?

Hibernate是一个Java类和多个表的最佳方法吗?
EN

Stack Overflow用户
提问于 2010-03-10 01:02:09
回答 2查看 5.4K关注 0票数 4

换句话说:如何对一个被大量重用的子类/表进行建模/映射到许多不同的父实体?

我有几个实体类型,每个实体类型都持久化到自己的表中:

A类-->表A类B -->表B....

现在,我需要使这些类中的每个类都成为1:M单向子集的父类。集合是实体随着时间的推移而获得的批准的历史记录。子域类称为"ApprovalItem“。审批类对于所有类型的父级都是完全相同的。

最好的映射方式是什么?如果我创建一个表来保存所有的ApprovalItems,那么我不能强制FK关系到实体的PK和/或我留下了一个糟糕的数据库设计。

另一方面,我可以为每种实体类型(例如A_ApprovalItems、B_ApprovalItems等)创建一个ApprovalIems表。在数据库端,这似乎是一个很好的模式,但是我似乎需要用Java语言为每个实体审批创建一个单独的域类(例如,AAprrovalItem类、BApprovalItem类等)。在Java中创建这么多新类,除了允许我放入不同的JPA映射注释之外,什么也不做,这似乎有很多麻烦和复杂性。

Hibernate中有没有一种映射技术,可以让Java中的一个类根据集合的父所有者映射到几个不同的表?

EN

Stack Overflow用户

发布于 2010-03-10 01:08:33

Hibernate文档的Chapter 8. Inheritance Mapping可能会有所帮助。

否则,我认为有多个“什么都不做”的ApprovalItem派生类没有问题,就像你说的,因为它确实区分了批准,这就像拥有一种类型的批准。看到您的模型是这样的,我建议您使用多个类,即使它们只继承自您的ApprovalItem基类。

我是否很好地理解了你的问题,或者我漏掉了一些更微妙的东西?

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2410884

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档