栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

JPA /休眠差异映射超类和实体抽象类

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JPA /休眠差异映射超类和实体抽象类

MappedSuper类将继承用于字段和代码的重用。例如,如果您希望所有实体都具有

Long id
Longversion
字段,则可以使它们全部扩展一个包含这两个字段以及它们的getter,setter等
baseEntity
注释的类
MappedSuperclass
。但是,您永远不会拥有一个具有关联的实体与baseEntity:关联将始终与baseEntity的特定子类关联。

父实体用于“实体多态性”。例如,您可以想象有两种

Message
:an
EmailMessage
和a
SmsMessage
。两者都将包含源,目标和主体。但是,EmailMessage将具有电子邮件地址和主题,而SmsMessage将具有电话号码。

您可以想象有一个

Person
实体,其中包含已发送消息的集合,类型为
Message
。该集合实际上将包含EmailMessage和SmsMessage的实例。Hibernate将根据用于继承映射的继承策略来决定实例化哪个实例:

  • 所有消息都可以存储在同一表中,并且Hibernate将使用一个包含消息类型的区分列
  • EmailMessage可以存储在一个表中,而SmsMessage可以存储在另一个表中
  • 或两个实体(源,目标,主体)共有的字段都可以存储在公用表中,第二个表中的EmailMessage特定字段,第三个表中的SmsMessage特定字段。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/447701.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号