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

相关推荐
夏贰四7 分钟前
管控数据加载调度如何规避任务冲突?数据加载运维监控体系该如何搭建?
java·大数据·运维
山甫aa21 分钟前
JavaWeb后端开发学习手册
java·开发语言·数据库·学习·mysql·springboot·web
鱼鳞_31 分钟前
热门八股-JVM
java·jvm
ly768932 分钟前
XML 从入门到实践:语法、命名空间、XPath、XSD 与 Java 安全解析
xml·java·python
长谷深风11142 分钟前
好的 Tool Schema,不是字段越全越好
java·大数据·人工智能·ai agent·agent工作流·智能体设计·ai产品设计
IT 行者44 分钟前
用 HiddenHttpMethodFilter 解决浏览器不支持 PUT/DELETE/PATCH 的问题
java·spring
晚安code1 小时前
Redis 内存淘汰策略实战:什么时候淘汰、怎么选、怎么防缓存击穿
java·redis·缓存
goyeer1 小时前
Liunx日志管理与journalctl
java·linux·运维·服务器·运维开发·信息化·信息化企业管理
tianyu2342 小时前
Java 正则表达式终极指南:从 Pattern 到 Matcher,从双重转义到性能优化,一篇全搞定
java·开发语言·正则表达式·group·find·pattern·matcher
Emily156853598704 小时前
Emerson 1C31129G03 Analog Input Module
java·开发语言·前端·plc·emerson·1c31129g03·input module