后端部分实现多表连接,通过员工id查找此员工对应的所有角色

数据库表部分

员工表

在这里插入图片描述

角色表

员工-角色中间表

在这里插入图片描述

  • 员工和角色关系是多对多关系

实体类部分

角色实体类
在这里插入图片描述
员工实体类

在这里插入图片描述

  • 为了和角色表连,额外新增属性 List roles = new ArrayList<>();
  • 中间表不需要编写对应的实体类

mapper接口的sql语句部分

角色mapper部分

  • 角色表和中间表连,通过员工id获取所有角色数据
    在这里插入图片描述

员工mapper部分(employeeMapper)

sql部分

  • 其实就是逆向工程默认有的,这里主要改写resultMap返回封装对象
    在这里插入图片描述

resultMap部分

  • 主要利用上面角色mapper中的额外sql语句,将查询到的对应角色封装进员工实体类的角色集合属性中

在这里插入图片描述

  • 将员工sql查询出来的id,放入额外角色sql语句作为参数,此语句查询出的值封装进员工实体类的角色集合属性中
    在这里插入图片描述

员工业务层实体类部分(employeeService)

  • 直接引用mapper的方法就好了在这里插入图片描述

控制器层

  • 接收前端传过来的员工ID,即可返回对应的一个员工实体类数据
  • 这样返回的员工就携带了对应的角色集合,可回显到页面中
    在这里插入图片描述
    在这里插入图片描述
  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值