Hibernate实体关系映射——双边的多对多关系
2015-06-19 22:22
330 查看
//刘梦冰发表于2015-6-19
/article/3721407.html讲述了单边的多对多关系,本文在该例的基础上近一步学习双边的多对多关系。
单边的多对多关系中:
标签类Tag中没有Post属性,但是帖子类Post中有Tag属性,它们之间是单边的多对多的关系。Tag、Post都是多方,它们的多对多关系保存在第三个表(中间表tb_tag_post)中。Tag标签实体类只有一个id主键以及String类型的name普通属性。Post帖子实体类中有id主键、标题、内容等普通属性,还有一个Set类型的多对多集合属性tags。
而本例的双边的对多对多关系中,
标签类Tag中有Post属性,帖子类Post中有Tag属性。所以Tag中需要增加一个
由于Post中已经配置了数据库表的映射,现在只需要在Tag中用mappingBy指定Post里与之对应的属性,即Post中的
配置代码如下:
/article/3721407.html讲述了单边的多对多关系,本文在该例的基础上近一步学习双边的多对多关系。
单边的多对多关系中:
标签类Tag中没有Post属性,但是帖子类Post中有Tag属性,它们之间是单边的多对多的关系。Tag、Post都是多方,它们的多对多关系保存在第三个表(中间表tb_tag_post)中。Tag标签实体类只有一个id主键以及String类型的name普通属性。Post帖子实体类中有id主键、标题、内容等普通属性,还有一个Set类型的多对多集合属性tags。
而本例的双边的对多对多关系中,
标签类Tag中有Post属性,帖子类Post中有Tag属性。所以Tag中需要增加一个
Set<Post>类型变量,以及对应的getter、setter方法。
由于Post中已经配置了数据库表的映射,现在只需要在Tag中用mappingBy指定Post里与之对应的属性,即Post中的
List<Tag>tags属性。
配置代码如下:
[code]@ManyToMany(mappingBy="tags") private Set<Post> posts=new HashSet<Post>();
相关文章推荐
- HDU 4864 Task 贪心 好题
- Redis3.0 集群
- iOS-学习笔记-UI-第十五天
- 集线器(HUB),交换机(Switch),路由器(Route)
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第五课:Hello World
- 面试题
- iOS-学习笔记-UI-第十四天
- iOS-学习笔记-UI-第十三天
- 2015061906 - firebug安装和下载(2)
- Bootstrap系列 -- 8. 代码显示
- iOS-学习笔记-UI-第十二天
- u Calculate e
- C语言连接MySQL数据库
- u Calculate e 分类: HDU 2015-06-19 22:18 14人阅读 评论(0) 收藏
- 让你的Git水平更上一层楼的10个小贴士
- Redis 2.8 架构分析
- Java并发编程-28-并发集合概述
- iOS-学习笔记-UI-第十一天
- python学习错误总结
- CODE[VS] 1098 均分纸牌