我有一个类,当前使用Hibernate映射为数据库表中的实体.该类应该重构为一个抽象类,其中包含一些对其所有子类通用的字段.
我正在使用注释来映射hibernate实体/关系类.
我想了解如何进行这种重构的建议/变体.
另外,关于如何将存储在数据库中的数据(对于将来的抽象超类)移动到其中一个具体子类中的一些建议.
首先,我将创建超类并添加必要的注释.你必须决定:
每班战略表
每个类层次结构策略的单个表
加入了子类策略
我认为加入的子类将在这里工作.您添加注释:
@Entity @Inheritance(strategy=InheritanceType.JOINED)
到了超级班.
其次,我将创建表示子类的表.请记住,这些列只有子类唯一的列,共享的列将保留在超类中.然后从超类'表中选择属于每个子类的行并移动数据.
我不确定你是否在寻找更具体的东西?此文章解释了Hibernate的继承.