这个错误的原因就是,你要传递的参数已经在mybatis文件中配置过了,而传递参数时又用的这个名字所以解析时出错。
例如我的resultMap中已经配置了userId,这是一个对象
<resultMap id="userDynamicMap" type="UserDynamicTO">
<result property="income" column="INCOME"/>
<association property="userId" javaType="UserTO">
<id property="id" column="ID"/>
</association>
</resultMap>
但是在参数表示时,我这表示的是主键id,而不是一个对象,所以要把#{userId}改成别的名字
<update id="noSpeak" parameterType="UserDynamicTO">
UPDATE USER_DYNAMIC SET FORBID_COMMIT_BEGIN_DATE = #{forbidCommitBeginDate},
FORBID_COMMIT_END_DATE = #{forbidCommitEndDate}
WHERE USER_ID = #{userId}
</update>