mybatis报Mapper配置文件出错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis报Mapper配置文件出错相关的知识,希望对你有一定的参考价值。
参考技术A最近学习mybatis框架时,遇到一坑,记录一下debug过程。
操作表一对一查询时,运行junit测试类时报错如下:
根据错误提示,第一时间检查了mapper的xml文件名称以及对应的包名是否跟dao接口类的一致,确认没有问题后,初步判定原因是 mapper映射文件问题 ,mapper内容如下:
随后检查mapper文件中返回类型以及实体类属性、数据表对应字段,发现应该是由于resultMap定义的返回类型有问题,于是检查mybatis主配置文件
果不其然,调试后明确问题:
由于主配置文件只配置了<mappers>标签下的<package>指定了dao接口所在包, 没有配置<typeAliases>下的<package>指定实体类的别名,因此mapper文件中返回的实体类名称不能使用简写,需要写完整全限定类名
主配置文件指定实体类别名后测试,测试类正常返回一对一查询的数据
以上是关于mybatis报Mapper配置文件出错的主要内容,如果未能解决你的问题,请参考以下文章
springboot整合mybatis(配置模式+注解模式)
mybatis源码-解析配置文件(四-1)之配置文件Mapper解析(cache)