Hibernate实体关系映射——双边的多对多关系
2018-01-20 14:58
162 查看
http://blog.csdn.net/heavy_dream/article/details/79114273讲述了单边的多对多关系,本文在该例的基础上近一步学习双边的多对多关系。
单边的多对多关系中:
标签类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中的
配置代码如下:
单边的多对多关系中:
标签类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属性。
配置代码如下:
@ManyToMany(mappingBy="tags") private Set<Post> posts=new HashSet<Post>();
相关文章推荐
- Hibernate实体关系映射——双边的多对多关系
- Hibernate实体关系映射——双边的多对一、一对多关系
- Hibernate实体关系映射——双边的一对一关系
- Hibernate实体关系映射(OneToMany、ManyToOne双边)——完整实例
- Hibernate实体关系映射—Annotation
- Hibernate之实体关系映射
- Java Web整合开发(23) -- Hibernate实体关系映射
- Hibernate实体映射关系
- Hibernate之jpa实体映射的三种继承关系
- 轻松搞定hibernate映射实体关系
- Hibernate实体映射属性关系
- 4、Hibernate 实体关系映射(二、单边多对一关系 注解、xml两种方式)
- hibernate实体关系映射——单边的多对多关系
- Hibernate之jpa实体映射的三种继承关系
- Hibernate(六):实体关系映射
- Hibernate注解方式处理实体映射关系
- Hibernate实体关系映射实例解析
- Hibernate实体映射——单边的一对多关系
- 解决使用Hibernate QBC复合查询含有联合主键映射关系实体的问题
- Hibernate基于注解方式配置来实现实体和数据库之间存在某种映射关系