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

Hibernate映射中的值对象还是实体对象?

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

Hibernate映射中的值对象还是实体对象?

Hibernate的文档区分了 Entity TypeValue Type ,而不是Value Object。

  • 实体类型的对象:具有自己的数据库身份
  • 值类型的对象:属于一个实体,并且其持久状态嵌入在拥有实体的表行中。值类型没有标识符或标识符属性。

据我所记得,这本书使用了一个示例,该示例具有

address
表示为单个String和一个
user
包含地址String 的对象:

  • 实现为值类型(通常意味着在数据库级别的同一表中的列),如果删除了用户,则其地址也删除了。没有用户,该地址将无法使用,也无法共享。

  • 地址被实现为实体类型(这可能意味着使用单独的表),这些地址将在没有用户的情况下独立存在,并且两个用户将能够共享同一地址。

在您的情况下,订单行不属于订单,其持久状态未嵌入订单行(没有意义),它具有自己的标识(由orderId和productId组成)。订单行绝对不是值类型,而是实体类型。

实际上,只要您考虑关联(一对一,一对多等),就肯定会操纵实体。



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

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

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