mybatis 接口传入多个参数,批量插入

报org.apache.ibatis.binding.BindingException: Parameter 'array' not found. Available parameters are [roleIds, id, param1, param2]如何解决,

代码如下

接口

public interface UserRoleMapper {
    void saveUserRoleRel(@Param("id") Long id,@Param("roleIds") Long[] roleIds);
}

mapper:

  <insert id="saveUserRoleRel" parameterType="java.util.ArrayList">
        INSERT INTO sys_user_role()
        VALUES
        <foreach collection="array" item="roleIds" index="index" separator="," >
            (#{userId},#{roleId})
        </foreach>
    </insert>

 

 

<insert id="saveUserRoleRel" parameterType="java.util.ArrayList">
    INSERT INTO sys_user_role(userId,roleId) values
    VALUES
    <foreach collection="array" item="roleIds" index="index" separator="," >
        (#{userId},#{roleId})
    </foreach>
</insert>

接口应该是传JAVABEAN的集合,只能一个参数,封装一下。

你写的不对

参考https://www.cnblogs.com/fnlingnzb-learner/p/10566452.html

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632