Hibernate的多对多关系(一)

Hibernate的多对多关系查询 多对多的条件

1.需求:通过ID查询用户的信息,同时查询用户对应的角色的信息。(先查询本表需要查询的id的信息)

2.用户对应的角色的信息。(通过查询出来的外键字段去中间表查询对应的外键)
注意:用户和角色的关系是多对多的关系,他们的关系是在中间表里面的

3.通过中间表的映射关系找到了角色ID(通过中间表查询出来的外键去对应关联的表查询信息)

4.对多对通用一个表找到另一个表的数据的条件为(重点)
中间表
中间表对应本表的外键
中间表对应关联表的外键

5为什么需要三个条件?
答:因为多对多的时候,两个表的关系是通过中间表建立的!!

6.实现这个操作必须做两个步骤:
创建一个可以存储多个表数据的实体类,User实体配置多对多的关系
//用户和角色是多对多的关系
//意味着一个用户可以有多个角色,那么使用集合Set接收角色的信息

7.将查询的多个表的数据封装这个实体累的对象里面,通过配置来说实现。多对多配置
set标签: 作用是用于配置实体类对应的set集合
name : 唯一标识符,就是指定实体类对应的属性名是哪个set集合,也代表返回的类型是一个set集合
table:多对多的时候对应的中间表的表名
key标签 : 多对多的配置时,指定 本配置的实体类对应的表在中间表的外键
many-to-many标签:作用 声明是多对多的关系
class:指定集合的元素的数据类型
column:指定间表对应关联表的外键

-1.中间表
-2.中间表对应本表的外键
-3.中间表对应关联表的外键
set标签的作用是指定返回的类似是一个set,和实体类的声明保持一致
name:实体类的对应set集合的属性名
table:多对多的时候对应的中间表的表名

 many-to-many声明是一个多对多的关系
        class指定的是返回的数据类型
        column代表的中间表中外键的字段名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值