Mybatis 3+Mysql 实现批量插入

本文介绍了一种使用ibatis实现批量插入的方法,该方法能够显著提高数据插入效率,相较于逐条插入,对于3000条数据的批量操作可节省约一半的时间。文章详细展示了XML配置及Java代码实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 终于实现了ibatis的批量插入,此方法插入3000条数据,比单条插入可以节省一半的时间  
  2. XML代码:  
  3. <insert id="insertBatch" parameterType="ArrayList">  
  4.     insert intouser(id,account,password,active,status,name,gender,active_date,expiry_date,type,remark,group_id,disable,exam_number,mobile)  
  5.     values  
  6.     <foreach collection="list"item="obj" index="index"separator="," >  
  7.        (#{obj.id},#{obj.account},#{obj.password},#{obj.active},#{obj.status},#{obj.name},#{obj.gender},#{obj.active_date},  
  8.        #{obj.expiry_date},#{obj.type},#{obj.remark},#{obj.group_id},#{obj.disable},#{obj.exam_number},#{obj.mobile})  
  9.     </foreach>  
  10.     </insert>  
  11. 在java中只需要传递list过来就可以了。  
  12. 我是这样写的:  
  13. private ArrayList<Map<String, String>>userList = new ArrayList<Map<String,String>>();  
  14.    
  15.    
  16. Map<String,String>userMap= new HashMap<String,String>();  
  17.            userMap.put("id", userId);  
  18.            userMap.put("account", arr[0]);  
  19.            userMap.put("password", pas);  
  20.            userMap.put("active", String.valueOf(1));  
  21.            userMap.put("status", String.valueOf(1));  
  22.            userMap.put("name", arr[1]);  
  23.            userMap.put("gender", String.valueOf(gender));  
  24.            userMap.put("active_date", active_date);  
  25.            userMap.put("expiry_date", expiry_date);  
  26.            userMap.put("type", String.valueOf(3));  
  27.            userMap.put("remark"null);  
  28.            userMap.put("group_id", String.valueOf(1));  
  29.            userMap.put("disable", String.valueOf(0));  
  30.            userMap.put("Exam_number", arr[15]);  
  31.            userMap.put("phoneNumber", arr[14]);  
  32.            userList.add(userMap);  
  33. 通过循环将数据加入到list,最后将list传递。  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小猪跑得快-Fly

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值