首页 > 编程学习 > MyBatis Generator报错:Result Maps collection already contains value for xxxMapper.BaseResultMap

发生问题的环境

<!--mysbatis-->
<dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.7</version>
</dependency>
<!--generator-->
<dependency><groupId>org.mybatis.generator</groupId><artifactId>mybatis-generator-core</artifactId><version>1.4.0</version>
</dependency>
<!--mysql-->
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.27</version>
</dependency>
<!--log4j-->
<dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version>
</dependency>

在pom.xml配置以上环境时,运行数据库逆向生成xml后,运行项目报错Result Maps collection already contains value for xxxMapper.BaseResultMap

问题原因

在生成的Mapper.xml文件中发现多个重复代码块:
在这里插入图片描述
并且,这几个BaseResultMap里面的内容还和数据库字段对不上!!!

解决方案

在mybatis官方文档中找到了解决的答案:

由于我的环境导入的是MySQL8.0的jar包,这就命中了官方所说中的Bug。

链接
在这里插入图片描述
所以,只需要在"generatorConfig.xml"中的jdbcConnectio标签中添加以下代码即可

<property name="nullCatalogMeansCurrent" value="true"/>

本文链接:https://www.ngui.cc/el/2314879.html
Copyright © 2010-2022 ngui.cc 版权所有 |关于我们| 联系方式| 豫B2-20100000