java一个大list 分入70一个小list 批量入库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
if(listNew.size()>0){
                   logger.info("走批量插入一个大list:"+listNew.size()+"分70一分小list");
                   List< List<InstantQtyEntity>> listMap = new ArrayList<>();
                   int size =70;
                   int arrSize = listNew.size()%size==0?listNew.size()/size:listNew.size()/size+1;//分成几份
                   logger.info("大list:"+listNew.size()+"分{"+size+"}一分小list:分成"+arrSize+"份");
                   for(int i=0;i<arrSize;i++){//---
                       List<InstantQtyEntity> itemList = new ArrayList<>();
                       for(int j=i*size;j<=size*(i+1)-1;j++){//--
                           if(j<=listNew.size()-1){//核--
                               itemList.add(listNew.get(j));
                           }
 
                       }
                       listMap.add(itemList);
                   }
 
                   for(List<InstantQtyEntity> item : listMap){
                       logger.info(item.toString());
                       int a = webApiMapper.insertInstantQtyStocknumList(item);
                       logger.info("取即时alu_kingdee_outbound_request_stocknum;入库:" + (a > 0 ? "成功" : "失败"));
                   }
 
               }

  解决:
在java代码中将精度设置成统一的,如
new BigDecimal(“10.28”).setScale(5),
new BigDecimal("(11.2").setScale(5),
new BigDecimal(“12.51”).setScale(5),
再次测试批量新增,数据正常:
column1 column2
10.28000 xxx
11.20000 yyy
12.51000 zzz

posted @   A汉克先生  阅读(365)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示