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

当子有复合PK时,如何在父实体中定义@OneToMany?

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

当子有复合PK时,如何在父实体中定义@OneToMany?

您需要使用派生身份。

ParentHobbyPK
应该看起来像这样:

@Embeddablepublic class ParentHobbyPK {    @Column(name="HOBBY_ID")    private String hobbyID;    private long parentID; // corresponds to the PK type of Parent}

ParentHobby
应该看起来像这样(重要的是
@MapsId
注释):

@Entity@Table(name="PARENT_HOBBY")public class ParentHobby {    @EmbeddedId    private ParentHobbyPK id;    @MapsId("parentID") // maps parentID attribute of the embedded ID    @ManyToOne(optional = true)    @JoinColumn(name = "PARENT_ID", referencedColumnName = "PARENT_ID", insertable = true, updatable = true)    private Parent parent;    ...}

派生身份将在JPA 2.1规范的第2.4.1节中讨论。



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

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

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