mybatis mapper遇到问题

来源:互联网 发布:java中线程之间的通信 编辑:程序博客网 时间:2024/04/30 03:41

Caused by: java.lang.IllegalArgumentException: Result Maps collection already contains value for com.baseinfo.mapper.UserCustomFieldMapper.userCustomFieldBaseMap
at org.apache.ibatis.session.Configuration$StrictMap.put(Configuration.java:802)
at org.apache.ibatis.session.Configuration$StrictMap.put(Configuration.java:774)
at org.apache.ibatis.session.Configuration.addResultMap(Configuration.java:556)
at org.apache.ibatis.builder.MapperBuilderAssistant.addResultMap(MapperBuilderAssistant.java:217)
at org.apache.ibatis.builder.ResultMapResolver.resolve(ResultMapResolver.java:47)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:285)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:252)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElements(XMLMapperBuilder.java:244)
at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:116)
... 52 more



问题可能 原因:

1.mapper和mapper.xml中的方法名不相同

2.xml文件中namespace写错了

3.包路径写错了

4.传入mapper的参数和mapper上定义的类型不一样


通过一个个删除.xml文件中的方法。。。。

定位到,原因是在自动生成xml文件时,文件包路径写错了。

<select id="queryUserCustomFields" parameterType="com.baseinfo.vo.ee.UserCustomFieldVo" resultMap="userCustomFieldBaseMap">select<include refid="userCustomField_column_list"></include>from crm_user_custom_field t<where><include refid="query_userCustomField_where"></include></where></select>
其中parameterType包的路径写错了。

0 0
原创粉丝点击