ClassCastException: class java.util.HashMap cannot be cast to class com.pojo.User"/>
【MyBatis】java.lang.ClassCastException: class java.util.HashMap cannot be cast to class com.pojo.User
在显式配置外部的 resultMap 的时候,报错提示 HashMap 的类不能够被转化成自定义的User类,于是检查UserMapper.xml,把问题定位于resultMap 和 select tag之间的参数引用:
发现 resultType = “map” 语法有误,resultType是结果的类型,该查询语句返回的是User, 一般可以不写,mybatis可以识别出来,但是写上了就不能跟实际返回的类型不一致。
官方解释:
resultType 期望从这条语句中返回结果的类全限定名或别名。 注意,如果返回的是集合,那应该设置为集合包含的类型,而不是集合本身的类型。 resultType 和 resultMap之间只能同时使用一个。
resultMap 对外部 resultMap 的命名引用。结果映射是 MyBatis 最强大的特性,如果你对其理解透彻,许多复杂的映射问题都能迎刃而解。 resultType 和 resultMap 之间只能同时使用一个。
把代码改成 resultMap = “map” 问题就解决了。
更多推荐
【MyBatis】java.lang.ClassCastException: class java.util.HashMap cannot be cast to
发布评论