MyBatis 查询的条目与预期的不一致
预期查询的数据条目是 4 条:

但是 MyBatis 查询出来的结果只有 2 条数据:

resultMap 开启了 autoMapping 功能,就不需要多余地添加 result。下面是错误的映射操作:
<resultMap id="mapOfQueryMyCourses" type="UniCourse" autoMapping="true">
<!-- resultMap 开启了 autoMapping,那么 result 标签不能写 -->
<result column="term" property="term"/>
<association property="course" javaType="Course" columnPrefix="c_" autoMapping="true"/>
<association property="teacher" javaType="Teacher" columnPrefix="t_" autoMapping="true"/>
</resultMap>
<select id="queryMyCourses" resultMap="mapOfQueryMyCourses" parameterType="Student">
SELECT sc.term,
sc.stu_id,
c.name c_name,
c.property c_property,
c.credit c_credit,
t.name t_name
FROM `stu_course` AS sc
JOIN `courses` AS c ON sc.course_id = c.cno
JOIN `teachers` AS t ON sc.teacher_id = t.tno
WHERE sc.stu_id = #{sno}
</select>
把所有的 result 标签删除掉。也就是说,autoMapping 功能开启,result 就不要写,两者不能同时存在:
<resultMap id="mapOfQueryMyCourses" type="UniCourse" autoMapping="true">
<association property="course" javaType="Course" columnPrefix="c_" autoMapping="true"/>
<association property="teacher" javaType="Teacher" columnPrefix="t_" autoMapping="true"/>
</resultMap>

MyBatis 查询的条目与预期的不一致的更多相关文章
- mybatis查询语句的背后之参数解析
转载请注明出处... 一.前言 通过前面我们也知道,通过getMapper方式来进行查询,最后会通过mapperMehod类,对接口中传来的参数也会在这个类里面进行一个解析,随后就传到对应位置,与sq ...
- mybatis查询返回null解决方案
mybatis查询返回null解决方案: 问题:查询出的列与javabean中的字段名不一致. 解决方案: 1.将javabean中的字段改为和查询出的列名一致: 2.将sql加入as改变列名,和ja ...
- mybatis查询无结果, 数据库运行相同sql查询出结果
一.问题描述 mybatis查询无结果, 数据库运行相同sql查询出结果, 如下 这是数据库记录 这是mybatis查询出的结果, 记录条数0 这是直接将控制台一模一样的sql查询语句放到Navica ...
- mybatis 查询 xml list参数
mybatis 查询 xml list参数: <select id="getByIds" resultType="string" parameterTyp ...
- MyBatis 查询映射自定义枚举
背景 MyBatis查询若想映射枚举类型,则需要从 EnumTypeHandler 或者 EnumOrdinalTypeHandler 中选一个来使用 ...
- mybatis查询异常-Error querying database. Cause: java.lang.ClassCastException: org.apache.ibatis.executor.ExecutionPlaceholder cannot be cast to java.util.List
背景,mybatis查询的时候直接取的sqlsession,没有包装成SqlSessionTemplate,没有走spring提供的代理. 然后我写的获取sqlsession的代码没有考虑到并发的情况 ...
- mybatis查询语句的背后
转载请注明出处... 一.前言 在先了解mybatis查询之前,先大致了解下以下代码的为查询做了哪些铺垫,在这里我们要事先了解,myabtis会默认使用DefaultSqlSessionFactory ...
- mybatis查询语句的背后之封装数据
转载请注明出处... 一.前言 继上一篇mybatis查询语句的背后,这一篇主要围绕着mybatis查询的后期操作,即跟数据库交互的时候.由于本人也是一边学习源码一边记录,内容难免有错误或不足之处,还 ...
- mybatis查询结果和接收的不一样
记一次大坑:mybatis查询结果和接收的不一样,折腾我好几个小时. 先上代码:代码是要查询排名,sql执行的结果 SELECT b.operator_id, b.class_count, b.cla ...
- 微软BI 之SSIS 系列 - 变量查询语句引起列输出顺序不一致的解决方法
开篇介绍 这个问题来自于 天善BI社区,看了一下比较有意思,因为我自己认为在 SSIS中处理各种类型文件的经验还比较丰富(有一年的时间几乎所有ETL都跟文件相关),但是这个问题确实之前没有特别考虑过. ...
随机推荐
- Python开发Brup插件检测SSRF漏洞和URL跳转
作者:馒头,博客地址:https://www.cnblogs.com/mantou0/ 出身: 作为一名安全人员,工具的使用是必不可少的,有时候开发一些自己用的小工具在渗透时能事半功倍.在平常的渗透测 ...
- 第三方模块 request openpyxl
目录 第三方模块的下载 pip工具 简介 pip使用注意 pip位置和环境变量设置 pip安装第三方模块 使用pip下载可能会遇到的问题 pycharm的第三方模块下载功能 request模块 req ...
- before-after-hook钩子函数
before-after-hook 最近看别人的代码,接触到一个插件,before-after-hook,百度搜一圈也没有看到什么地方有教程,看这个字面意思是一个hook,和axios里面的拦截器,v ...
- BeanShell 后置处理器/前置处理器实现urldecode 解码
1.使用正则/Json提取器提取需要解码的值 2.在提取的接口中添加后置处理器或在下个调用接口中添加前置处理器 3.编码实现 String token = vars.get("access_ ...
- k3s安装kubernetes环境
官方文档:https://docs.rancher.cn/k3s/ 官方文档:https://rancher.com/docs/k3s/latest/en/installation/install-o ...
- Spark详解(05) - Spark核心编程SparkCore
Spark详解(05) - Spark核心编程SparkCore RDD概述 什么是RDD RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基 ...
- 【架构设计】你真的理解软件设计中的SOLID原则吗?
前言 在软件架构设计领域,有一个大名鼎鼎的设计原则--SOLID原则,它是由由Robert C. Martin(也称为 Uncle Bob)提出的,指导我们写出可维护.可以测试.高扩展.高内聚.低耦合 ...
- 如何在 pyqt 中使用动画实现平滑滚动的 QScrollArea
前言 在之前的博客<如何在 pyqt 中实现平滑滚动的 QScrollArea>中,我们使用定时器和队列实现了平滑滚动.但是实现代码还是有一点复杂,所以这篇博客将使用 Qt 的动画框架 Q ...
- spring注入静态变量有几种方法?不看的都掉坑里了!
springboot中经常会用到properties文件中的配置,一般使用@Value注入,但是针对Utils工具类,需要注入一个静态变量有几种方法?为什么有的同学注入的值为null? 代码示例 如果 ...
- 解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题
解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题 需要检查的步骤: 1.是否map ...