• Hutool工具包导入excel文件数据到数据库


    一:导入依赖:

    
        cn.hutool
        hutool-all
        ${hutool.version}
    
    
        org.apache.poi
        poi-ooxml
        ${poi.version}
    
    
        org.apache.poi
        poi
        ${poi.version}
    
    
        org.apache.poi
        poi-ooxml-schemas
        ${poi.version}
    
    

    二,编写代码(事例)

    1. public HttpResult importFile(@RequestParam("multipartFile") MultipartFile multipartFile) throws IOException {
    2. ExcelReader reader = ExcelUtil.getReader(multipartFile.getInputStream());
    3. //添加excel和映射对象的关系
    4. reader.addHeaderAlias("料号","partNum");
    5. reader.addHeaderAlias("备件料号名称","partSpareName");
    6. reader.addHeaderAlias("备件规格","partNorms");
    7. reader.addHeaderAlias("安全库存","safetyStock");
    8. reader.addHeaderAlias("入库数量","warehousingNum");
    9. reader.addHeaderAlias("适用设备","fitEqp");
    10. reader.addHeaderAlias("库位","location");
    11. List eqpInfos = reader.readAll(SparePart.class);
    12. eqpInfos.stream().map(a->{
    13. a.setCompanyId(Convert.toLong(systemFeignService.getCompanyIdFeign(RequestContext.getInstance().getCompanyName()).getData()));
    14. return a;
    15. }).forEach(a->{
    16. SparePart one = sparePartService.getOne(new LambdaQueryWrapper().eq(SparePart::getPartNum, a.getPartNum()));
    17. if (null==one){
    18. SparePart sparePart=new SparePart();
    19. BeanUtils.copyProperties(a,sparePart);
    20. boolean save = sparePartService.save(sparePart);
    21. }else {
    22. one.setWarehousingNum(one.getWarehousingNum()+ a.getWarehousingNum());
    23. boolean save = sparePartService.updateById(one);
    24. }
    25. });
    26. return HttpResult.ok();
    27. }

  • 相关阅读:
    dp训练题解
    9月备考PMP,应该从哪里备考?
    简单中继实验
    一篇文章,让你看懂 Spring Cloud 之 Eureka
    算法--差分
    Feign源码解析:初始化过程(三)
    ASP.NET Core 产生连续 Guid
    KUKA机器人中断编程2—中断相关的指令
    JavaScript运行机制与实践应用
    KRONES克朗斯电源维修0-901-17-350-8技术概论
  • 原文地址:https://blog.csdn.net/weixin_59244784/article/details/126849889