SpringBoot如何实现多表查询功能
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,这篇文章主要介绍SpringBoot如何实现多表查询功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实体类:Emp 类:@Data@NoArgsConstructor@All
千家信息网最后更新 2025年01月18日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); ListqueryEmpList();}
DeptMapper:
@Mapper@Repositorypublic interface DeptMapper { ListqueryDeptList(@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安全错误
数据库的锁怎样保障安全
win cc服务器不可用
服务器集中管理的好处
首届网络安全宣传周时间
宁波应用软件开发公司
数据库可以储存什么
数据库的关系模式1nf
腾讯网络安全最近在干啥
会议服务器
嘉定区智能软件开发处理方法
电力营销网络安全告于段落
2022数据库
江宁区的app软件开发
服务器网卡品牌
先知是数据库么
信息技术关系型数据库
广东惠普服务器维修哪家便宜
重大活动的网络安全分析
组装服务器配置
石景山区网络技术服务采购
利用外文数据库检索实验报告
软件开发技术概述PPT
惠州软件开发找哪家公司好
海康视频管理服务器作用
网络技术网站源码
java要用到什么数据库
能查防伪的数据库是怎么做的
数据库服务空间
北京易企网络技术
北京同天力合网络技术
python软件开发机构