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

相关推荐
Rsun045511 分钟前
17、Java 责任链模式从入门到实战
java·python·责任链模式
GDAL3 分钟前
IntelliJ IDEA 前端开发全面教程
java·ide·intellij-idea
rabbit_pro3 分钟前
IDEA保存SSH会话信息
java·ssh·intellij-idea
Rsun045515 分钟前
12、Java 享元模式从入门到实战
java·开发语言·享元模式
小则又沐风a9 分钟前
深剖string内部结构 手撕string
java·前端·数据库·c++
2401_8326355811 分钟前
Spring Data MongoDB 最佳实践:如何构建高效数据访问层
java·mongodb·spring
亚马逊云开发者12 分钟前
Java 8升级Java 17实战:用AWS Transform Custom自动化迁移Spring Boot项目完整教程
java·自动化·aws
消失的旧时光-194312 分钟前
Spring Boot 实战(四):MySQL + MyBatis 接入,打通用户注册最小闭环
spring boot·mysql·mybatis
CHANG_THE_WORLD14 分钟前
C 语言的 `fread` 与 C++ 的 `ifstream::read` 区别及设计哲学
java·c语言·c++
架构源启15 分钟前
深度解析:Spring Boot + Apache OpenNLP 构建企业级 NLU 系统
spring boot·后端·apache