必须为元素类型 “update” 声明属性 “resultType”。
XML文件错误地方:
<update id ="batchUpdateMarkingOfficerId" parameterType="java.util.List" resultType="java.util.Integer" >
<foreach collection ="list" item="reddemCode" index= "index" separator =",">
update reply
<set>
marking_officer_id = #{reddemCode.markingOfficerId}
</set>
where reply_id = #{reddemCode.replyId}
</foreach >
</update >
service错误地方:
if(replyMapper.batchUpdateMarkingOfficerId(randomReply) != randomReply.size()) {
throw new OEException(ResultEnum.UPDATE_ERROR);
原因分析:
service中对应返回int类型,但是在XML中没有返回int。mybatis 默认返回int,不需要加resultType.
解决方案:去掉update语句中的resultType
<update id ="batchUpdateMarkingOfficerId" parameterType="java.util.List" >
<foreach collection ="list" item="reddemCode" index= "index" separator =",">
update reply
<set>
marking_officer_id = #{reddemCode.markingOfficerId}
</set>
where reply_id = #{reddemCode.replyId}
</foreach >
</update >