Result Maps collection already contains value for 问题总结

Posted shenggg

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Result Maps collection already contains value for 问题总结相关的知识,希望对你有一定的参考价值。

1、当同一个xml映射文件内存在两个相同的id(即两个sql语句的id相同)时会报此错

解决:查询sql语句的id值修改

2、在mybatis的配置文件mybatis.xml内使用了<mapper/>标签加载xxxMapper.xml的映射文件报错,因为如果xxxMapper.xml与namespace的接口在同一路径下,就不需要在mybaits.xml中再进行配置了。

解决:将mybatis文件中<mapper/>标签中的内容删除

3、parameterType中的问题。这里的类名如果找不到也会报这个错,比如你之前是将该类名写死在这里,之后由于重构将该类转移到其他包中,如果这里不修改也会报这个错

解决:检查。。

4、还是parameterType中的问题,这次是关于自定义类的,当你使用基本类型的时候,比如int、string等,千万不要写错,比如写成strnig,咋一看看不出来,结果该问题就很难找

解决:检查。。

5、resultType的值与resultMap的id值相同的话会报错,可能是冲突了

解决:修改resultMap的id属性,因为resultType的值即为bean类别名或者全路径名

6、这一点和上一点差不多,如果是自定义resultMap,如果返回类型写成resultType,也会报这个错(今天就载在这。)

解决:将返回类型改为resultMap,且不要出现第5点的问题

7、待发现。。。

补充,在maven项目里面,可能会又用自己本地的classes文件,又引用了jar包,这时候要把Without scope去除掉

技术图片

 

以上是关于Result Maps collection already contains value for 问题总结的主要内容,如果未能解决你的问题,请参考以下文章

Result Maps collection already contains value for

MyBatis出错Result Maps collection does not contain value for java.lang.Integer

错误日志Result Maps collection already contains value for XXXResultMap

Result Maps collection already contains value for BaseResultMap

异常 java.lang.IllegalArgumentException: Result Maps collection already contains value

Mybatis异常_02_Result Maps collection already contains value for