关于指定逆向工程生成Mapper文件内容重复

用指定逆向工程文件生成内容后,内容是这样的在这里插入图片描述
然后就开始了测试里面生成的方法,在这里插入图片描述
但是一运行就报错
在这里插入图片描述

org.apache.ibatis.exceptions.PersistenceException: 
### Error building SqlSession.
### The error may exist in com/dao/AdminMapper.xml
### The error occurred while processing mapper_resultMap[BaseResultMap]
### Cause: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.dao.AdminMapper.BaseResultMap
	at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:23)
	at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:79)
	at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:63)
	at com.util.SqlSessionUtil.<clinit>(SqlSessionUtil.java:17)
	at com.test.Test.main(Test.java:11)
Caused by: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.dao.AdminMapper.BaseResultMap
	at org.apache.ibatis.builder.xml.XMLConfigBuilder.parseConfiguration(XMLConfigBuilder.java:106)
	at org.apache.ibatis.builder.xml.XMLConfigBuilder.parse(XMLConfigBuilder.java:89)
	at org.apache.ibatis.session.SqlSessionFactoryBuilder.build(SqlSessionFactoryBuilder.java:77)
	... 3 more
Caused by: org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.dao.AdminMapper.BaseResultMap
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:117)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.parse(XMLMapperBuilder.java:89)
	at org.apache.ibatis.builder.annotation.MapperAnnotationBuilder.loadXmlResource(MapperAnnotationBuilder.java:159)
	at org.apache.ibatis.builder.annotation.MapperAnnotationBuilder.parse(MapperAnnotationBuilder.java:113)
	at org.apache.ibatis.binding.MapperRegistry.addMapper(MapperRegistry.java:66)
	at org.apache.ibatis.binding.MapperRegistry.addMappers(MapperRegistry.java:91)
	at org.apache.ibatis.binding.MapperRegistry.addMappers(MapperRegistry.java:99)
	at org.apache.ibatis.session.Configuration.addMappers(Configuration.java:647)
	at org.apache.ibatis.builder.xml.XMLConfigBuilder.mapperElement(XMLConfigBuilder.java:310)
	at org.apache.ibatis.builder.xml.XMLConfigBuilder.parseConfiguration(XMLConfigBuilder.java:104)
	... 5 more
Caused by: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.dao.AdminMapper.BaseResultMap
	at org.apache.ibatis.session.Configuration$StrictMap.put(Configuration.java:776)
	at org.apache.ibatis.session.Configuration$StrictMap.put(Configuration.java:748)
	at org.apache.ibatis.session.Configuration.addResultMap(Configuration.java:536)
	at org.apache.ibatis.builder.MapperBuilderAssistant.addResultMap(MapperBuilderAssistant.java:204)
	at org.apache.ibatis.builder.ResultMapResolver.resolve(ResultMapResolver.java:44)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:281)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:248)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElements(XMLMapperBuilder.java:240)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:113)
	... 14 more
Exception in thread "main" java.lang.NullPointerException
	at com.util.SqlSessionUtil.getSqlSession(SqlSessionUtil.java:32)
	at com.test.Test.main(Test.java:11)

这个错的主要是
Result Maps collection already contains value for com.dao.AdminMapper.BaseResultMap
Result Maps集合已经包含com.dao.AdminMapper.BaseResultMap的值

然后就去这个Adminmapper.xml文件中找
在这里插入图片描述
一看,里面的东西重复生成了五六遍,怪不得。
虽然知道了报错的原因,但是处理却不是很好处理,不可能每次都去删掉这些重复的代码,要老命的。只能从根源上解决
然后就找到了解决的办法,原文章页面在下面
https://blog.csdn.net/weixin_41859877/article/details/103453202

解决办法就是在连接数据库信息的后面加上这一句:

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

在这里插入图片描述
大致内容就是如此,添加之后重新生成一下就欧克了

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值