当前位置: 代码迷 >> 综合 >> 【Mybatis】出现Parameter 'Array' not found. Available parameters are [0, 1, 2, param3, param1, param2]错误
  详细解决方案

【Mybatis】出现Parameter 'Array' not found. Available parameters are [0, 1, 2, param3, param1, param2]错误

热度:92   发布时间:2024-01-26 02:24:21.0

报错信息:Parameter 'Array' not found. Available parameters are [0, 1, 2, param3, param1, param2]错误

Dao定义接口方法:

int updateFlgBatch(@Param("flg") int flg,@Param("updateTime") Date updateTime,@Param("updateBy") int updateBy,@Param("id") Object[] id);xml错误写法:
<update id="updateFlgBatch">update t_market_price set flg=#{flg},update_time=#{updateTime},update_by=#{updateBy}where id in<foreach item="id" collection="array" open="(" separator="," close=")" index="index">#{id}</foreach>
</update>

这种情况是参数有多个,如果这样写,就会出错了。如果是单个数组的参数,可以像上面那样写。

正确写法

<update id="updateFlgBatch">update t_market_price set flg=#{flg},update_time=#{updateTime},update_by=#{updateBy}where id in<foreach item="item" collection="id" open="(" separator="," close=")" index="index">#{item}</foreach>
</update>
  相关解决方案