//入库数据是需要批量入库的List int len =入库数据.size(); //每次循环10条 int incremnet = 10; //计算需要寻得次数 int con = len % 10 ==0 ? len /10 : len / 10 +1; for (int i =0; i < con; i++) { //当前条数 int curr = i * incremnet ; //空集合 List<实体> list = new ArrayList<实体>(); if (len - curr > incremnet ) { //获取插入的集合 list = 入库数据.subList(curr, curr + incremnet ); //执行插入 xxdao.add_listxx(list); }else{ //获取插入的集合 list = 入库数据.subList(curr, len); //执行插入 xxdao.add_listxx(list); } }
//批量插入dao接口 public int add_listxx(@Param("list") List<实体对象> list);
<!-- 批量插入 --> <intsert id="add_listxx" useGeneratedKeys="true"> insert into 表名(name,type,cerator,...) values <foreach collection="list" separator="," item="i"> (#{i.name},#{i.type},#{i.cerator}...) </foreach> </insert>
原文:https://www.cnblogs.com/blackAndWhiteBlog/p/13321428.html