SpringBoot如何实现多表查询功能
发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,这篇文章主要介绍SpringBoot如何实现多表查询功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实体类:Emp 类:@Data@NoArgsConstructor@All
千家信息网最后更新 2025年11月15日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安全错误
数据库的锁怎样保障安全
黄大仙抽签软件开发
steam哪个服务器好用
新乡格入网络技术有限公司怎么样
dell 2300服务器
欧盟关税数据库TARIC
鄂州软件开发方案
我的世界死去的服务器
请网络技术人员调记录
ps5最终幻想14是什么服务器
国家实行网络安全什么制度
丹江口软件开发包括哪些
打印服务器的ip地址
金蝶软件能改数据库端口吗
沙河市网络安全培训班
数据库出现comdlg32
网络安全倡议书500字
计算机网络技术类吗
JDBC访问数据库技术
一个单位的网络安全工作指导思想
超聚变 海棠服务器
服务器系统如何运行
数据库的七个层次
student数据库加姓名
开启数据库开发
数据仓库需要学数据库吗
数据库中如何查询学号是5的记录
德康G6服务器不可用
赋能网络安全新防护
网络安全语言推荐
山西君子岛互联网科技有限公司