快速解析excel

背景

如果你经常使用excel,想将excel的数据快速插入数据库,或者读取excel的内容,做一些逻辑处理。那么本文可以帮助你。

采用poi jar

直接将文件转为文件流,后续获取流来操作数据。

java 复制代码
 public Integer doUploadMetaQ(InputStream inputStream) {
        List<RiskAppBasicDataDO> riskAppBasicDataDOList = new ArrayList<>();
        try {
            Workbook workbook = new XSSFWorkbook(inputStream);
            Sheet sheet = workbook.getSheetAt(RiskAppBasicDataConstant.ZERO);
            for (int i = 1; i < sheet.getPhysicalNumberOfRows(); i++) {
                RiskAppBasicDataDO riskAppBasicDataDO = new RiskAppBasicDataDO(StringUtils.EMPTY);
                Row row = sheet.getRow(i);

                riskAppBasicDataDO.setAppName(row.getCell(0)==null?"":row.getCell(0).toString());
                riskAppBasicDataDO.setServiceType(ServiceTypeEnum.METAQ.getValue());
                riskAppBasicDataDO.setDetailType(row.getCell(2)==null?"":row.getCell(2).toString());
                riskAppBasicDataDO.setServiceName(row.getCell(1)==null?"":row.getCell(1).toString());
                riskAppBasicDataDO.setNamespace(row.getCell(3)==null?"":row.getCell(3).toString());
                log.info("appName is {} ",riskAppBasicDataDO.getAppName());
                riskAppBasicDataDOList.add(riskAppBasicDataDO);
            }

        } catch (IOException e) {
            e.printStackTrace();
        }
        if (CollectionUtils.isEmpty(riskAppBasicDataDOList)) return RiskAppBasicDataConstant.ZERO;
        return riskAppBasicDataDao.batchInsert(riskAppBasicDataDOList);
    }
相关推荐
程序员游老板1 分钟前
基于SpringBoot3_vue3_MybatisPlus_Mysql_Maven的社区养老系统/养老院管理系统
java·spring boot·mysql·毕业设计·软件工程·信息与通信·毕设
福尔摩斯张20 分钟前
C++核心特性精讲:从C语言痛点出发,掌握现代C++编程精髓(超详细)
java·linux·c语言·数据结构·c++·驱动开发·算法
@淡 定36 分钟前
Spring中@Autowired注解的实现原理
java·后端·spring
时空无限44 分钟前
Java Buildpack Reference
java·开发语言
oh,huoyuyan1 小时前
【界面案例】火语言RPA读取Excel文件,循环写入界面表格
excel·rpa
爱笑的眼睛112 小时前
超越剪枝与量化:下一代AI模型压缩工具的技术演进与实践
java·人工智能·python·ai
阿里云云原生2 小时前
Android App 崩溃排查指南:阿里云 RUM 如何让你快速从告警到定位根因?
android·java
历程里程碑2 小时前
C++ 9 stack_queue:数据结构的核心奥秘
java·开发语言·数据结构·c++·windows·笔记·算法
醇氧2 小时前
【Windows】从守护到终结:解析一个 Java 服务的优雅停止脚本
java·开发语言·windows
努力发光的程序员2 小时前
互联网大厂Java求职面试实录
java·jvm·线程池·多线程·hashmap·juc·arraylist