这个问题搞了我2个多小时!请教了大佬也没发现端倪
Caused by: java.lang.IllegalArgumentException: Result Maps collection already contains value for cn.xxxMapper.BaseResultMap
记录一下,希望能帮到其他人
其实很简单。经验真的很重要
参考这篇
列出了几种报错原因
按着这个检查
采用了最笨的方法 删除整个mapper.xml文件一点点添加进去
最后发现 在inset方法报这个错!
仔细检查
<insert id="insert" parameterType="cn.wonhigh.o2o.center.coupon.common.model.CouponRecordDetailsEntity">
insert into coupon_record_details (<include refid="Base_Column_List" />)
values (
#{recordId,jdbcType=VARCHAR},#{handleStatus,jdbcType=INTEGER},#{couponCode,jdbcType=VARCHAR},#{orgCode,jdbcType=VARCHAR},#{createTime,jdbcType=TIMESTAMP},#{updateTime,jdbcType=TIMESTAMP},#{saveJson,jdbcType=TEXT}
)
</insert>
最后的这个saveJson字段的类型是TEXT 这个是工具自动生成的。应该是不能识别TEXT所以报错了。
还是parameterType中的问题,这次是关于自定义类的,当你使用基本类型的时候,比如int、string等,千万不要写错,比如写成strnig,咋一看看不出来,结果该问题就很难找
踩过的坑记录一下!