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

与同一实体的Hibernate递归多对多关联

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

与同一实体的Hibernate递归多对多关联

@ManyToMany对自己来说相当令人困惑,因为您通常的建模方式与“hibernate”方式不同。您的问题是您缺少另一个收藏夹。

可以这样考虑-如果要“多对多”映射“作者”
/“书”,则需要“书”上的“作者”集合和“作者”上的“书”集合。在这种情况下,您的“用户”实体代表关系的两端。因此您需要“我的朋友”和“朋友的”收藏集:

@ManyToMany@JoinTable(name="tbl_friends", joinColumns=@JoinColumn(name="personId"), inverseJoinColumns=@JoinColumn(name="friendId"))private List<User> friends;@ManyToMany@JoinTable(name="tbl_friends", joinColumns=@JoinColumn(name="friendId"), inverseJoinColumns=@JoinColumn(name="personId"))private List<User> friendOf;

您仍然可以使用相同的关联表,但是请注意,join / inverseJon列在集合上交换。

“ friends”和“
friendOf”集合可能匹配,也可能不匹配(取决于您的“友谊”是否总是相互的),您当然不必在API中以这种方式公开它们,但这就是映射的方式它在hibernate状态。



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

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

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