后端-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的值的话要带上实体类.字段。

相关推荐
汤姆yu3 分钟前
基于springboot的智能民宿预定与游玩系统
java·spring boot·后端
黎雁·泠崖5 分钟前
Java常用类核心精讲 · 七篇精华总结
java·开发语言
逆境不可逃15 分钟前
【从零入门23种设计模式01】创建型之工厂模式(简单工厂+工厂方法+抽象工厂)
java·spring·设计模式·简单工厂模式·工厂方法模式·抽象工厂模式·工厂模式
重生之后端学习39 分钟前
208. 实现 Trie (前缀树)
java·开发语言·数据结构·算法·职场和发展·深度优先
Sayuanni%341 分钟前
初阶_多线程2(线程安全)
java
Howie Zphile43 分钟前
# 组织增熵与全面预算管理的持续优化
java·大数据·数据库
琢磨先生David43 分钟前
有了AI,还需要学Springboot吗?
人工智能·spring boot·后端
芒克芒克1 小时前
深入浅出BlockingQueue(二)
java
识君啊1 小时前
Java 栈 - 附LeetCode 经典题解
java·数据结构·leetcode·deque··stack·lifo
shehuiyuelaiyuehao1 小时前
关于hashset和hashmap,还有treeset和treemap,四个的关系
java·开发语言