MyBatis Result Maps collection does not contain va

错误:
java.lang.IllegalArgumentException: Result Maps collection does not contain value for java.util.Map
at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:797)
at org.apache.ibatis.session.Configuration.getResultMap(Configuration.java:550)
at org.apache.ibatis.builder.MapperBuilderAssistant.setStatementResultMap(MapperBuilderAssistant.java:344)
at org.apache.ibatis.builder.MapperBuilderAssistant.addMappedStatement(MapperBuilderAssistant.java:284)
at org.apache.ibatis.builder.xml.XMLStatementBuilder.parseStatementNode(XMLStatementBuilder.java:107)
at org.apache.ibatis.session.Configuration.buildAllStatements(Configuration.java:698)
at org.apache.ibatis.session.Configuration.hasStatement(Configuration.java:668)
at org.apache.ibatis.session.Configuration.hasStatement(Configuration.java:663)
at org.apache.ibatis.binding.MapperMethod$SqlCommand.(MapperMethod.java:180)
at org.apache.ibatis.binding.MapperMethod.(MapperMethod.java:43)
at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:58)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:51)
at com.sun.proxy.$Proxy91.queryList(Unknown Source)
at com.ssm.bbs.controller.HelloWorldController.list(HelloWorldController.java:29)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)

User.xml


。。。


select uid,uname,upasswd,email,ustat,uface,uintro,uexp,urmb,active,gender from User

package com.ssm.bbs.dao.UserDao
public interface UserDao {
public List queryList();
}

这个错误的原因是,我在其他mapper.xml中错写了一个resultMap="java.util.Map" 改成resultType就不报错了。
但是有一个新的错误:

 Error querying database.  Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.ssm.bbs.dao.UserDao
### Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.ssm.bbs.dao.UserDao] with root cause
java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.ssm.bbs.dao.UserDao

我已经检查过了,我的接口全名和mapper的namespace是一致的,接口名和mapper的文件名也是一致的,但还是有问题

//替换成下面的
<select id="queryList" resultMap="Map">
    select uid,uname,upasswd,email,ustat,uface,uintro,uexp,urmb,active,gender from User
</select>
    //Model对象和数据库表对象映射resultMap是不是没有加
//type写成你的User类,包含包名和类名:如com.model.User
<resultMap id="userMap" type="com.model.User" >
        <!--column对应数据库字段名,property对应User对象属性名,一一对应好-->
        <id column="ID" property="uid"/>
        <!--其他字段-->
    </resultMap>
    <select id="queryList" resultMap="userMap">
        select uid,uname,upasswd,email,ustat,uface,uintro,uexp,urmb,active,gender from User
</select>

没问题了,就是这

其他mapper.xml中错写了一个resultMap="java.util.Map" 改成resultType就不报错了。

的问题

上面我说的,是我测试类的问题改了就好了。

Result Maps collection does not contain value for java.util.Map
这句话的意思是,你的map中没有value