ItJava开发大批量数据批量入库时的边界问题,后台逻辑循环时避免空值出现

大批量数据批量入库时的边界问题


原代码块:

Int size = list.size();//假设size获取回来的size为10万

Log.info(“====excle表的size数:”+size);

Int count=5000;

If(size<count){

           Log.info(“表中数据小于count的执行方法”);

          UploadImpl.batchInsert(list);//实现类中入库操作

}else{

       Int temp = size/count+1;

       For(int = 0;i<temp ;i++){

      If(i==temp-1){

       List<List<String>>   subList = list.subList(count*i,size);

       uploadImpl.batchInsert(subList );//实现类中入库操作

}else{

      List<List<String>>   subList = list.subList(count*i,count*(i+1));

      uploadImpl.batchInsert(subList );//实现类中入库操作

}

     Log.info(“入库成功”+new Date());

}

}


场景:页面上传excle表,表中数据约10万,大家自己尝试的时候,搞少点,关键是后台逻辑输出数据的处理,避免出现空指针(空值)

目的:excle上传成功,数据入库成功。


ok,如果数据太大,我们自己用小数据,写一个main方法测试一下

大家应该发现问题了吧?

12除以2等于6,但是我们执行了多少次?


对的,我们执行记录有7次,那么怎么搞呢?

欢迎一起讨论。

补充效果图说明,两种解决办法:


God helps those who help themselves.

天助自助者!(美国人最喜欢的句子!)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值