是否ormlite支持继承?(Does ormlite support inheritance?)

2019-06-23 17:05发布

是否ormlite支持这三继承的策略?

  • 每类层次结构表
  • 每个子类表
  • 每个具体类表

我发现在ORMLite用户组的讨论 ,但我不知道它回答我的问题。

特别我想使用“每个类层次结构表”。 如果他们不从ormlite框架的支持,我会做出一个类,而忘记了继承,但我宁愿使用继承。

Answer 1:

ORMLite不会自动支持这些,没有。 我不知道你实际上阅读链接到您,因为它是非常具体的关于它的线程:

我需要的是:如果我有A类作为超,和我有直接的子类B和C,我跑了所有记录的查询/ A类的对象,我也希望有A级的所有对象,B和ç返回。

是啊,ORMLite没有做到这一点,目前我没有计划,以支持它。 在这样的复杂性,除非是我弄错了如何做到这一点,是什么,我会说是“精简版”之外。 该方法Hibernate支持这样的结构,是有外键,多个表,而魔术连接。

这个问题给出了有关如何使用ORMLite来实现继承的一些想法:

1)你可以有A类和相关的表 - 因此它不能是抽象的。 然后,你可以有有B和C子类A和拥有所有的作为场的每一个单独的表。 然后,您可以创建一个特殊的DAO这也将查询B和C,并将它们添加到您的结果A.

2)另一种方法是你可以做B级和C 不是子类,而是有异物到A,然后您可以查询所有的作为,其中一些将是B的一个组成部分,一些C的一个组成部分,有的只是答:您也然后可以查询B和C,并使用一个DAO刷新,让你将无法施放A的领域。 A也可能有某种枚举它说,这是否是A,B或C.你也可以做一些神奇的地方,你可以说getSubClassObject(),如果会看着枚举和查询的的B或C道同为A对象的权利外键关联的对象。



文章来源: Does ormlite support inheritance?