大家好,又见面了,我是你们的朋友全栈君。
今天测试mybatis接口时遇到一个小问题,花了好长时间
代码语言:javascript复制Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [E:ideaSSM-CRUDsrcmainresourcesmapperEmployeeMapper.xml]'; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.crazy.dao.EmployeeMapper.BaseResultMap
代码语言:javascript复制Caused by: org.springframework.core.NestedIOException: Failed to parse mapping resource: 'file [E:ideaSSM-CRUDsrcmainresourcesmapperEmployeeMapper.xml]'; nested exception is org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. Cause: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.codegen.dao.EmployeeMapper.BaseResultMap
最后找到报错的 mapper.xml
文件 搜索BaseResultMap
这个关键字,果然出现了两次 BaseResultMap
。
这个问题的产生原因是:使用 mybatis 逆向工程多次生成 mapper 时,未将之前生成的 mapper.xml
删除,导致其在原有的xml里面追加内容。最终导致 BaseResultMap
重复。删除已生成的 mapper.xml
文件, 重新生成即可。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/187600.html原文链接:https://javaforall.cn