Mybatis系列之(十四)Mybatis的多表关联查询

Mybatis的多表关联查询

1. 一对一和多对一

1.1 需求描述

用户表和账户表

  1. 查询所有账户信息及所属用户信息

1.2 实现方式

  1. 创建主表对应实体类的子类实现
  2. 构建实体类之间的一对一和多对一映射关系实现

1.3 准备数据

  1. 创建对应的表,包括user(用户表),account(账户表)
    在这里插入图片描述
    在这里插入图片描述

1.4 创建主表对应实体类的子类实现

  1. 主表对应的实体类
    在这里插入图片描述

  2. 次表对应的实体类
    在这里插入图片描述

  3. 创建主表对应实体类的子类
    在这里插入图片描述

  4. 为主表创建Dao,IAccountDao
    在这里插入图片描述

  5. 创建mapper映射文件,IAccountDao.xml
    在这里插入图片描述

  6. 测试即可
    查询所有账户信息及所属用户信息
    在这里插入图片描述

1.5 构建实体类之间的一对一和多对一映射关系实现

  1. 主表对应的实体类
    在这里插入图片描述

  2. 次表对应的实体类
    在这里插入图片描述

  3. 为主表创建Dao,IAccountDao
    在这里插入图片描述

  4. 创建mapper映射文件,IAccountDao.xml
    在这里插入图片描述

  5. 测试即可
    查询所有账户信息及所属用户信息
    在这里插入图片描述

2. 一对多

2.1 需求描述

用户表和账户表

  1. 查询所有用户信息及对应的账户信息

2.2 编程步骤

  1. 创建对应的表,包括user(用户表),account(账户表)
    在这里插入图片描述
    在这里插入图片描述

  2. 创建对应的实体类,包括用户实体类(User)和账户实体类(Account)
    在这里插入图片描述
    在这里插入图片描述

  3. 为user实体类创建Dao,IUserDao
    在这里插入图片描述

  4. 为IUserDao创建对应的mapper映射文件,IUserDao.xml
    在这里插入图片描述

  5. 创建对应的测试方法进行测试即可
    查询所有用户信息及对应的账户信息
    在这里插入图片描述

3. 多对多

3.1 需求描述

用户表和角色表

  1. 查询所有用户信息及用户所属角色的信息
  2. 查询所有角色信息及角色的对应用户信息

3.2 编程步骤

  1. 创建对应的表,包括user(用户表),role(角色表),user_role(角色用户关系表)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  2. 创建对应的实体类,包括用户实体类(User)和角色实体类(Role)
    在这里插入图片描述
    在这里插入图片描述
  3. 为实体类分别创建Dao,包括IUserDao和IRoleDao
    在这里插入图片描述
    在这里插入图片描述
  4. 为Dao创建对应的mapper映射文件,包括IUserDao.xml和IRoleDao.xml
    在这里插入图片描述
    在这里插入图片描述
  5. 创建对应的测试方法进行测试即可
    查询所有角色信息及角色的对应用户信息
    在这里插入图片描述
    查询所有用户信息及用户所属角色的信息
    在这里插入图片描述
posted @   刘二水  阅读(269)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示