6/11 MyBatis操作之多表查询(一对一、一对多、多对一、多对多)

通过MyBatis实现分页功能

dao层:
在这里插入图片描述

Mapper:这里用到了代码的重用

在这里插入图片描述
直接传入page和size
日后在业务层再写判断,这里直接把业务层流程写在了test页面里。
在这里插入图片描述

Test:
在这里插入图片描述

成功实现分页:
在这里插入图片描述

若此处不经过判断
在这里插入图片描述

一对多查询1:使用一条sql语句进行联表查询。

前提:有一个雇员表emp 和 对应的部门表 dept 查询雇员的所有信息,包括所在的部门信息。

实体设计:

雇员实体:
在这里插入图片描述

部门实体:
在这里插入图片描述

dao层设计

在这里插入图片描述

xml设计。

在这里插入图片描述
若只执行一句sql。查询结果值会显示单独一个表以及表里面的属性值(如下图),所以这里一步出不来,要写一个映射器。
在这里插入图片描述

映射器设计:

在这里插入图片描述
在这里插入图片描述

测试:

现在就完成一对多的查询了。
在这里插入图片描述


查询所有部门以及部门内员工的信息
dao

在这里插入图片描述

xml:这里的xml依然用到了映射器。(因为没法一步完成)

在这里插入图片描述

测试

在这里插入图片描述

可以通过设置这个属性 自动映射 不再需要手动配置;了。
在这里插入图片描述

一对多2:通过多条sql查询语句,获得需要的结果

这是不再使用一句sql完成查询结果,而是使用多条sql一起完成查询结果。

在这里插入图片描述
在这里插入图片描述

xml设计:

在这里插入图片描述

结果自然还是和使用一句sql语句是一样的。
在这里插入图片描述

多对一查询1:使用一条sql语句进行联表查询。

通过员工的id 查询该员工对应的所有信息。

实体设计

在这里插入图片描述
在这里插入图片描述

xml:

在这里插入图片描述

测试

在这里插入图片描述

多对一2:通过多条sql查询语句,获得需要的结果

xml

在这里插入图片描述

测试

在这里插入图片描述

多对多:就是几个多对一或者几个一对多

注意:当涉及到多对多 或者以后需要很多xml配置文件的时候
mybatisconfig 里面的mappers反射 不能再用mapper resource了。 因为会有很多xml文件。
所以这里改成package。 直接写xml文件所在的dao包的路径,而且xml文件要和dao文件的名字一致。
在这里插入图片描述

实体类

在这里插入图片描述

在这里插入图片描述

这里全都放开了。

dao在这里插入图片描述

在这里插入图片描述

xml
在这里插入图片描述
在这里插入图片描述

测试:
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值