zoukankan      html  css  js  c++  java
  • MyBatis的foreach使用小坑,传值一个常规参数,一个数组

    先举个小例子

    我们使用foreach进行批量插入

    insert into user(id,name)
    values
    <foreach collection="list" separator=","  item="item" index="index">
            (#{item.id},#{item.name})
    </foreach>

    今天在操作库时遇到了一个小需求,传递的是关系表的 主键数组和 主键

    //关系表
    Integer saveItemId(@Param("itemId") Integer[] itemId, @Param("groupId") Integer groupId);
    itemId 是关联的主键列表 
    groupId 是被关联的主键
    这时传递了两个参数,foreach标签的collection属性就不会写了,写官方给出的类型,例如 array,list等会报错,找不到参数。
    所以直接尝试的写了 @Param("itemId") 注解中的参数名,竟然成了哈哈哈哈。
    <insert id="saveItemId">
        insert into t_checkgroup_checkitem (checkgroup_id, checkitem_id)
        values
            <foreach collection="itemId" item="item"  separator=",">
                (#{groupId},#{item})
            </foreach>
    </insert>

  • 相关阅读:
    EL表达式与JSTL
    JSP
    session
    四则运算 第二次
    第二次作业
    四则运算
    用户使用手册与测试报告
    系统设计和任务分配
    需求规格说明书和原型设计
    用户需求分析和竞品分析
  • 原文地址:https://www.cnblogs.com/xiaozhang666/p/13725263.html
Copyright © 2011-2022 走看看