使用Mybatis 对数据库进行一对多嵌套查询,报错?

部分代码

【因为项目代码较多,且题主不知道什么原因导致报错,故将项目完整放在和彩云以方便排错
链接: https://caiyun.139.com/m/i?0d... 提取码:8PDA 复制内容打开和彩云手机APP,操作更方便哦 】

sql映射文件

<select id="selectBlog" resultMap="T">
        select * from tea_table where tea_id=#{id}
    </select>
    <resultMap type="Teacher" id="T">
        <collection property="stu" column="tea_id" ofType="Student" select="tea">
        </collection>
    </resultMap>

<select id="tea" resultType="Student">
        select * from stu_table where tid=#{id}
    </select>

问题

使用Mybatis 对数据库进行一对多嵌套结果查询,tea_table中name字段一直为null
image.png

由于没有idea报错信息目前不清楚具体bug原因,希望有人可以指教

数据库结构及参数设置

数据库结构
image.pngimage.png
代码全部参考于https://edu.aliyun.com/lesson...视频【问题代码约在视频第17:15~23:25处】,题主已按照视频中的代码进行了排错,但是不幸错误依然存在

运行环境

interllij开发版2021.3
jdk1.8
mysql及其gui
mybatis框架
该项目为基于maven的Javaweb项目

阅读 2.1k
1 个回答

归根结底是teacher实体类属性名与数据库列名不一样导致的
按下图将相应实体类属性名与数据库列名正确对应即可
image.png
image.png
image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进