码上敲享录 > mybatis的常见问题 > mybatis foreach 插入多个list

mybatis foreach 插入多个list

上一章章节目录下一章 2020-01-08已有2854人阅读 评论(0)

mybatis foreach 插入多个list

List<Map> listMap = new ArrayList<Map>();
String[] str1 = dept.getCombineId();
String[] str2 = dept.getTestType();
for (int i=0;i<str1.length;i++) {
    Map map =
new HashMap();
    map.put("combineId",str1[i] );
    map.put("testType",str2[i] );
    listMap.add(map);
}

sysDeptDao.insertDeptCombine(dept.getDeptId(),listMap);



dao层

@Insert("<script> insert into dep_dept_combine (dept_id,combine_id,test_type) " +
" <foreach collection='listMap' item='map' index='index' > \n" +
"  select #{deptId},#{map.combineId},#{map.testType}" +
"  <if test='index != (listMap.size() -1 )'> union all </if> \n" +
" </foreach> </script>")
void insertDeptCombine(@Param("deptId")String deptId,@Param("listMap")List<Map> listMap);



0

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交