千家信息网

SpringBoot如何实现多表查询功能

发表于:2024-10-02 作者:千家信息网编辑
千家信息网最后更新 2024年10月02日,这篇文章主要介绍SpringBoot如何实现多表查询功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!实体类:Emp 类:@Data@NoArgsConstructor@All
千家信息网最后更新 2024年10月02日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安全错误 数据库的锁怎样保障安全 2021网络安全大会时间 哈密市2021年网络安全宣传 乌镇乌镇互联网科技馆 联鲸科技第五届互联网大赛 移动充话费显示服务器异常 市北区游戏软件开发企业 数据库8c是什么意思 58同城服务器有问题吗 2018年辽宁广播电视网络安全 新疆网络安全公司 大学生校园网络安全工作计划 怎么保存图片到数据库 hbase json 数据库 华为软件开发通用能力认证专业级 在服务器上如何设置多个处理器 qq空间传图片显示服务器开小差 网络安全钥匙就是无线密码吧 河东区项目网络技术答疑解惑 超级跑跑港服连接服务器 软件开发类大公司 asp数据库莫名被删除 深圳 软件开发 遵化辅助网络技术售后服务 数据库驱动包怎么找 国家网络安全保护条例 微信数据库恢复隐藏账号 华文信息与网络技术学院指定教材 江苏服务器硬盘维修 枣庄软件开发初级教材哪家好 工控软件开发有没前景
0