SpringBoot如何实现多表查询功能
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍SpringBoot如何实现多表查询功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实体类:Emp 类:@Data@NoArgsConstructor@All
千家信息网最后更新 2026年11月04日SpringBoot如何实现多表查询功能
这篇文章主要介绍SpringBoot如何实现多表查询功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
实体类:
Emp 类:
@Data@NoArgsConstructor@AllArgsConstructorpublic class Emp { private int id; private String lastname; private String email; private int gender; private int did; private Dept dept; private Date birth = new Date();}Dept类:
@Data@AllArgsConstructor@NoArgsConstructorpublic class Dept { private int id; private String dname;}Mapper接口
EmpMapper:
//这个注解表示这是一个mybatis的mapper类@Mapper@Repositorypublic interface EmpMapper { void addEmp(Emp emp); void deleteEmp(int id); void updateEmp(Emp emp); Emp queryEmpById(int id); List queryEmpList();} DeptMapper:
@Mapper@Repositorypublic interface DeptMapper { List queryDeptList(@Param("cid") int cid);} EmpMapper.xml 配置文件
DeptMapper.xml配置文件
前端页面(部分)
编辑 删除
查询结果:
上述我们采用的是分步查询。
我们下面使用association嵌套映射
其实这里查询会出现一个奇怪的事情,
因为我们现在两个表中都有id这个字段,所以我们在映射时使用去查找部门的id时就发现查出来的是员工的id,就是因为员工的id与部门的id字段名重名了?
EmpMapper:
上述执行结果如下
我们发现是员工id,我们现在将数据库中部门表的id改为pid
修改配置文件以及实体类
@Data@AllArgsConstructor@NoArgsConstructorpublic class Dept { private int pid; private String dname;}执行结果:
我们就发现查询的就是部门的id了
但是针对上面这个问题我们将部门的id字段名改为did (did在员工表中也存在) 此时我们再去查询又发现还是可以把部门id查询出来
这个问题就离谱,难道是因为id是主键,did不是主键的原因?就离谱
以上是"SpringBoot如何实现多表查询功能"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
查询
部门
员工
字段
文件
结果
配置
功能
查询功能
离谱
内容
实体
就是
篇文章
问题
两个
事情
价值
兴趣
前端
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
重生之互联网科技帝国
互联网金融监管科技数据
互联网科技保险
港股互联网科技股
天下捷融互联网科技
广州善班互联网科技
互联网科技视频素材
科技互联网的估值
北京大学互联网科技怎么样
中国互联网有什么科技含量
以后互联网后是啥科技
健康食品互联网创新科技园项目
翼展科技 首家互联网医院
长沙茂晟互联网科技有限公司
徐州市互联网科技有限公司
互联网第三次科技革命特征
半导体是互联网高科技吗
科技互联网公司两年变化
山东亿川互联网科技有限责任公司
颐高云石互联网科技
科技互联网
互联网络科技有限公司
互联网科技金融公司
互联网 卓越科技
大白互联网科技
中国科技互联网公司收入
科技类公司包括互联网吗
互联网数据科技专业
华中科技大学互联网的牛人
互联网时代的科技公司