将Hibernate实体重构为子类

Mattias Holmqvist:

我有一个当前使用Hibernate映射为数据库表中的实体的类。此类应重构为一个抽象类,该抽象类包含其所有子类共有的某个字段。

我正在使用注释来映射休眠实体/关系类。

我想要有关如何进行此重构的建议/变体。

另外,对于如何将数据库中存储的数据(用于将来的抽象超类)移动到具体的子类之一中,也提出了一些建议。

文森特·拉姆达妮(Vincent Ramdhanie):

首先,我将创建超类并添加必要的注释。您必须决定:

  • 每课表策略
  • 每个类层次结构单表策略
  • 加盟子类别策略

我认为Joined子类将在这里工作。您添加注释:

@Entity
@Inheritance(strategy=InheritanceType.JOINED)

到超一流。

其次,我将创建代表子类的表。请记住,这些将仅具有子类唯一的列,共享的列将保留在超类中。然后从超类的表中选择属于每个子类的行并移动数据。

我不确定您是否在寻找更具体的东西?文章解释了Hibernate的继承。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章