【已解决】关于MyBatis的collection集合中只能取到一条数据的问题
一、问题
在涉及多表查询的时候,使用collection元素来映射集合属性时,出现了只能查询到一条数据的情况,但用sql语句在数据库中查询会有多条记录。
二、原因
如果两表联查,主表和明细表的主键都是id的话,明细表的多条只能查询出来第一条。所以涉及查询所用的表的主键的命名不要相同,否则会混淆。
三、解决
如果关联查询的两个表的主键已经相同了,如表早就已经建好了,现在也不可能改表字段了,那么只需要查询时给关联表查询字段给个不一样的别名即可。
<!-- 通用查询映射结果 --><resultMap id="UserResultMap" type="com.gd.mqtest.domain.User"><id column="id" property="id"/><result column="name" property="name"/><result column="age" property="age"/><result column="email" property="email"/><!--<collection property="userDetails" javaType="java.util.ArrayList" ofType="com.gd.mqtest.domain.UserDetail">--><!-- <id column="t_id" property="id" />--><!-- <result column="user_id" property="userId" />--><!-- <result column="color" property="color" />--><!--</collection>--></resultMap><select id="select" resultMap="UserResultMap">select u.id, u.name, u.age, u.email,ud.id t_id, ud.user_id, ud.color from user u join user_detail ud on u.id=ud.user_id</select>
相关文章:
【已解决】关于MyBatis的collection集合中只能取到一条数据的问题
一、问题 在涉及多表查询的时候,使用collection元素来映射集合属性时,出现了只能查询到一条数据的情况,但用sql语句在数据库中查询会有多条记录。 二、原因 如果两表联查,主表和明细表的主键都是id的话,明细表的多条…...
前端的学习-CSS(弹性布局-flex)
一:什么是弹性布局-Flex flex 是 Flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性。 语法: .box{display: flex; } .box{display: inline-flex; } 注意,设为 Flex 布局以后࿰…...
vue3集成LuckySheet实现导入本地Excel进行在线编辑,以及导出功能
第一步:克隆或者下载下面的代码 git clone https://github.com/dream-num/Luckysheet.git第二步:安装依赖 npm install npm install gulp -g 第三步:运行 npm run dev效果如下图所示 第四步:打包 打包执行成功后,…...
【征求意见】同济大学--城镇给水厂碳排放核算与评价方法
城镇给水厂保障城镇居民正常生活,是社会经济良性发展的重要基础性设施,对于我国双碳战略目标的实现至关重要。 随着城镇化的发展,城镇供水量不断升高,加上 水资源与生态环境问题不断涌现,人们对水的安全和品质的需求日…...
【Python】后台开发返回方法和状态码类的实现
Python 后台开发中,获取返回的类方法,以及状态码类的实现 代码备份 Code - response.py """ Response class for quick generate response """ from loguru_logger import get_loggerlogger get_logger(__name__)clas…...
opencloudosV8.6和openEuler 24安装 k8s
在三台机器上部署 Kubernetes 集群 1.环境准备2.在所有节点上进行以下步骤1. 更新系统和安装必要的软件包2. 禁用交换分区3. 禁用防火墙和SElinux4.系统主机名5.设置主机名与IP地址解析6.配置内核转发及网桥过滤7. 配置 Docker Cgroup 驱动8. 添加 Kubernetes 仓库并安装 kubea…...
Tensor安装和测试
1: 打开git官方 https://github.com/NVIDIA/TensorRT 2: 下载得到:TensorRT-10.2.0.19.Linux.x86_64-gnu.cuda-11.8.tar.gz 3: 下载后配置环境变量,上面地址记得改成真实地址。 4: 如果想python使用tensorrt,那么 解压后目录,…...
ELK对业务日志进行收集
ELK对业务日志进行收集 下载httpd 进到文件设置收集httpd的文件进行 设置 编辑内容 用于收集日志的内容 将日志的内容发送到实例当中 input {file{path > /etc/httpd/logs/access_logtype > "access"start_position > "beginning"}file{path &g…...
新质生产力
新质生产力”是一个相对较新的概念,指的是在数字化、智能化背景下,依托新技术、新业态、新模式,提升生产力质量和效率的一种生产力形态。它强调的是技术和创新对生产力的提升作用,尤其是在人工智能、大数据、互联网等新兴技术的推…...
《LeetCode热题100》---<5.②普通数组篇五道>
本篇博客讲解LeetCode热题100道普通数组篇中的六道题 第三道:轮转数组(中等) 第四道:除自身以外数组的乘积(中等) 第三道:轮转数组(中等) 方法一:使用额外的数…...
【面试题】【C语言】寻找两个正序数组的中位数
寻找两个正序数组的中位数 仅供学习 题目 算法时间复杂度 二分查找算法,时间复杂度为 O(log(min(m, n))),其中 m 和 n 分别是两个数组的长度。 子函数 查找两个数字的最大值 int max(int a, int b) {return a > b ? a : b; }查找两个数字的最小…...
原始的原型链是怎样玩的
带着问题看代码: 1、原始的继承是怎样实现继承的? A类的prototype 属性 B类的实例 2、实现继承后,连B类的中实例的属性(放在了A类的prototype中)和原型链的上的东西都可以用 3、A.prototype.constructor实际上已经指向…...
RabbitMQ高级篇(如何保证消息的可靠性、如何确保业务的幂等性、延迟消息的概念、延迟消息的应用)
文章目录 1. 消息丢失的情况2. 生产者的可靠性2.1 生产者重连2.2 生产者确认2.3 生产者确认机制的代码实现2.4 如何看待和处理生产者的确认信息 3. 消息代理(RabbitMQ)的可靠性3.1 数据持久化3.2 LazyQueue( 3.12 版本后所有队列都是 Lazy Qu…...
正点原子imx6ull-mini-Linux驱动之platform设备驱动实验(14)
我们在前面几章编写的设备驱动都非常的简单,都是对IO进行最简单的读写操作像I2C、 SPI、LCD 等这些复杂外设的驱动就不能这么去写了,Linux 系统要考虑到驱动的可重用性,因此提出了驱动的分离与分层这样的软件思路,在这个思路下诞生…...
z3基础学习
z3基础学习 z3是一个微软出品的开源约束求解器,能够解决很多种情况下的给定部分约束条件寻求一组满足条件的解的问题。 安装:pip install z3-solver 1. 简单使用 from z3 import * x Int(x) #创建名为x的int类型变量 y Int(y) solve(x y10,2*x…...
开发助手专业版,有反编译等多种功能
软件介绍 开发助手能够用来快速调试应用以及查看手机软硬件相关信息,包括:快速打开或关闭开发者选项中的选项。 将原来几十秒的操作缩短为一次点击。包括显示布局边界,显示 GPU 过度绘制。显示布局更新。强制 GPU 渲染 显示 GPU 视图更新&a…...
嵌入式初学-C语言-十一
#接嵌入式初学-C语言-十,以及部分例题# 循环结构 break和continue break 功能: 1. 用在switch中,用来跳出switch的case语句;如果case没有break,可能会产生case穿透。 2. 用在循环中(while、do..while、for..&#…...
浅谈几个常用OJ的注册方式
众所周知,好的OJ是成功的一半,但是有些英文OJ的注册很让人伤脑筋。 CodeForces 点进官网 戳这里 然后就会进入这个页面 在这一页里面里填写好信息即可 最后,一个邮件就会发到你的邮箱上,点击其中的链接即可激活账号 AtCoder …...
Html实现全国省市区三级联动
目录 前言 1.全国省市区的Json数据 2.找到Json数据文件(在此博文绑定资源)之后,放到resource目录下。 3.通过类加载器加载资源文件,读取Json文件 3.1 创建JsonLoader类 3.2 注入JsonLoader实体,解析Json文件 4.构建前端Html页面 5.通过…...
前端构建工具Webpack 与 Vite 大对比
在现代前端开发领域,构建工具扮演着至关重要的角色。它们不仅可以帮助我们管理项目依赖关系,还可以优化我们的代码,使其在生产环境中运行得更快更高效。其中两个最受欢迎的构建工具就是 Webpack 和 Vite。在这篇文章中,我们将深入…...
OpenClaw技能市场巡礼:Qwen3-32B生态的十大实用工具
OpenClaw技能市场巡礼:Qwen3-32B生态的十大实用工具 1. 为什么需要关注OpenClaw技能市场? 第一次接触OpenClaw时,我被它"让AI直接操作电脑"的理念震撼了。但真正让我决定长期使用的,却是它背后那个不断壮大的技能市场…...
AI编程助手太烧钱?试试这个‘外挂’:心灵宝石MCP服务在Cursor中的安装与长期使用心得
深度解析Cursor IDE中的MCP服务:心灵宝石的高效部署与实战技巧 作为一名全栈开发者,我几乎每天都要与代码编辑器打交道。从早期的Sublime Text到VS Code,再到如今集成了AI能力的Cursor,工具链的进化让开发效率不断提升。但随之而来…...
终极RPG Maker解密工具:3分钟学会提取游戏资源
终极RPG Maker解密工具:3分钟学会提取游戏资源 【免费下载链接】RPGMakerDecrypter Tool for extracting RPG Maker XP, VX and VX Ace encrypted archives. 项目地址: https://gitcode.com/gh_mirrors/rp/RPGMakerDecrypter 还在为RPG Maker加密文件无法提取…...
brpc服务发现服务健康状态:集成外部健康检查的终极指南
brpc服务发现服务健康状态:集成外部健康检查的终极指南 【免费下载链接】brpc brpc is an Industrial-grade RPC framework using C Language, which is often used in high performance system such as Search, Storage, Machine learning, Advertisement, Recomme…...
漫画收藏自由:picacomic-downloader的离线阅读解决方案
漫画收藏自由:picacomic-downloader的离线阅读解决方案 【免费下载链接】picacomic-downloader 哔咔漫画 picacomic pica漫画 bika漫画 PicACG 多线程下载器,带图形界面 带收藏夹,已打包exe 下载速度飞快 项目地址: https://gitcode.com/gh…...
Crossplane认证考试指南:备考资源与实战题解析
Crossplane认证考试指南:备考资源与实战题解析 【免费下载链接】crossplane Crossplane 是一个开源的资源抽象层,用于管理多云计算资源,支持混合云和多云环境。 * 资源抽象层、多云和混合云环境管理 * 有什么特点:支持多种云服务提…...
League-Toolkit:英雄联盟智能工具集如何解决游戏决策与操作痛点并提升玩家体验
League-Toolkit:英雄联盟智能工具集如何解决游戏决策与操作痛点并提升玩家体验 【免费下载链接】League-Toolkit 兴趣使然的、简单易用的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/League-Tool…...
DeepSeek-R1-Distill-Llama-8B部署全攻略:一条命令搞定推理模型
DeepSeek-R1-Distill-Llama-8B部署全攻略:一条命令搞定推理模型 1. 模型简介 1.1 什么是DeepSeek-R1系列? DeepSeek-R1是专为推理任务优化的语言模型系列,包含两个核心版本: DeepSeek-R1-Zero:完全通过强化学习训练…...
HarmonyOS6 ArkTS List 跳转准确
文章目录一、功能概述二、官方核心知识点1. 为什么普通 scrollTo 跳转不准?2. childrenMainSize3. ListScroller.scrollTo三、完整可运行代码四、代码核心逻辑解析1. 声明 ChildrenMainSize2. 配置不规则子项高度3. List 绑定 childrenMainSize4. 执行精准滚动跳转总…...
AI辅助开发实战:基于CosyVoice和LeeZhao的智能代码生成优化
在AI辅助开发的浪潮中,我们这些开发者既兴奋又头疼。兴奋的是,动动嘴皮子或者写几句描述,AI就能帮我们生成代码框架,大大提升了效率。头疼的是,生成的代码常常“驴唇不对马嘴”,要么上下文理解跑偏…...
