一 、报错信息
二、报错原因
1.在mapper.xml文件中 将resultType 和resultMap 混淆
注意:使用resultMap时,必须要有标签指明id和返回类型以及表字段的对应关系。
如果是直接返回一个用户定义的实体类型,则要使用resultType,弄混淆就会报错。
2.在mapper.xml文件中 将resultType单词大小写拼错
三、resultType 和resultMap的区别
ResultType和ResultMap在MyBatis中是两个用于处理查询结果映射的元素,它们的主要区别如下:
- 对象:ResultType主要用于处理一对一表连接的情况,通过在主表的pojo中添加嵌套另一个表的pojo,然后在mapper.xml中采用association节点元素进行对另一个表的连接处理。而ResultMap则可以处理查询出来的列名和pojo的属性名不一致的情况,通过定义一个ResultMap对列名和pojo属性名之间作一个映射关系。
- 描述:ResultType使用ResultType进行输出映射,只有查询出来的列名和pojo中的属性名一致,该列才可以映射成功。而ResultMap对于一对一表连接的处理方式通常为在主表的pojo中添加嵌套另一个表的pojo,然后在mapper.xml中采用association节点元素进行对另一个表的连接处理。
- 类型适用:在MyBatis中,在查询进行select映射的时候,返回类型可以用ResultType,也可以用ResultMap。
总结来说,ResultType和ResultMap在MyBatis中都用于处理查询结果的映射,但它们的应用场景和功能有所不同。
四.解决
1.将resultMap修改为resultType
2.注意单词大小写的拼写