mybatis报错Mapped Statements collection already contains value
程序员文章站
2022-07-15 12:05:52
...
错误描述
最近部署ssm项目时出错,错误为
Mapped Statements collection already contains value for
xxx包.xxxmapper.xxx方法
部署项目时,第一次使用了maven+mybatis generator,由于第一次使用****,一次性生成了许多方法,添加方法时,忘记更改项目id
处理弯路
在spring中配置mybatis的mapperLocations属性时,配置了单条路径时,并没有出现这个错误。但配置两条路径时,就出错了。怀疑是路径配置引起的出错
最后发现并不是这个问题:但在这里附上配置多条路径的代码:
1、方法一:xml文件都放在mapper中,直接写上通配符
<bean id="factory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="mapperLocations" value="classpath:mapper/*.xml"></property>
<property name="typeAliasesPackage" value="pojo"></property>
</bean>
2、使用数组:
<property name="mapperLocations">
<list>
<value>classpath:mapper/DeploymentMapper.xml</value>
<value>classpath:mapper/EmployeeMapper.xml</value>
</list>
</property>
用这个代码替换上面对应的位置
解决方法
1、将重名id修改,即可
从其他帖子收集的解决方法:
2.mapper中的parameterType或resultType为空。
3、忘了改namespace指向的类,所以两个mapper指向同一个mapper,所以报了这个错。
4、在使用@Select等注解的情况下,方法名即为mapper的id,重载的方法会报这个错。
推荐阅读
-
使用mybatis报错【Result Maps collection already contains value for ...BaseResultMap】的解决方法
-
moven 部署Sping与mybatis时,Mapped Statements collection does not contain value for Xxxxxxxx
-
Mapped Statements collection already contains value for xxx
-
Mybatis:Mapped Statements collection does not contain value for
-
[email protected]使用报错:Mapped Statements collection does not contain value for XXX
-
mybatis错误 Mapped Statements collection does not contain value for
-
Mybatis报错—— Mapped Statements collection does not contain value for com.mapper.DepartmentMapper
-
Mapped Statements collection already contains value for ……
-
Mapped Statements collection already contains value for
-
解决报错:Mapped Statements collection already contains value for...