后端-mybatis的一对一查询

准备两张表菜单表和分类表,一个菜单对应一个分类,一个分类对应多个菜单,我们从菜单对分类来操作一对一的关系,首先在菜单表里面要有一个分类表的id字段。

使用mapper的映射文件.xml来写的话我们在resource目录下创建各自mapper的.xml文件

.xml文件路径的话和mapper的路径要一致,并且使用/,不能是.

在菜单表中写上分类表的封装形式

在菜单表的mapper接口中写查询方法

在mapper的配置文件中写映射和菜单表的封装

resulttype只能封装菜单表的内容,分类表的信息封装不上,所以我们手动封装使用resultmap。

写一个resultmap标签 id是下面resultmap的值,type是菜单表的entity路径或者是表名就行。

里面内容的话dish表的所有字段可省略也可写上,因为本来菜单表就可以赋上值,这个操作就是因为分类表赋不上值 的操作。

菜单表的话:column的值是sql重命名之后的值,没有重命名就是数据库中的值(带下划线),porperty的值是实体类的驼峰命名。分类表的porperty的值见下下图

分类表的值是sql重命名之后的值,没有重命名的话就是数据库带下划线的值,porperty的值的话要带上实体类.字段。

相关推荐
皙然1 小时前
深入解析 Java 中的 final 关键字
java·开发语言·算法
东离与糖宝1 小时前
AI IDE冲击下,Java老项目如何平滑迁移到Cursor/AI编程工作流(完整迁移方案)
java·人工智能
刺客xs1 小时前
C++ 11新特性
java·开发语言·c++
SuperherRo1 小时前
JAVA攻防-Agent技术&JVM字节码&Premain启动加载&Agentmain运行附加&内存马应用
java·jvm·agent·内存马
Barkamin1 小时前
直接插入排序的简单实现
java·算法·排序算法
佩奇大王1 小时前
P1460 路径问题
java·开发语言
筱顾大牛1 小时前
Redission快速入门---分布式锁
java·redis·分布式·缓存
我真会写代码1 小时前
手写tomcat框架
java·servlet·tomcat
自在极意功。1 小时前
ArrayList扩容机制
java·开发语言·算法·集合·arraylist
Volunteer Technology1 小时前
核心框架源码常见问题(上)
java·后端·spring