问题:导入一个excel,实现实时进度条的效果

思路:

easyExcel可以获取到excel的总条数,读每一行时存redis,当前条数+1,前端每3秒调用获取redis中的进度数据

代码:

private void parseExcelAndSave(MultipartFile file, Integer approvalType, Integer type,Integer fixedSalaryBatchType, String originId, String requestId) throws Exception {EasyExcel.read(file.getInputStream(), FixedsalaryEmployeeBatchExtPO.class, new ReadListener<FixedsalaryEmployeeBatchExtPO>() {String redisKey = "importExcel:progressBar:"+ SecurityUtils.getLoginUser().get().getId();@Overridepublic void invoke(FixedsalaryEmployeeBatchExtPO fixedsalaryEmployeeBatchExtPO, AnalysisContext analysisContext) {try {//TODO:必填字段校验Integer rowCount = analysisContext.readSheetHolder().getApproximateTotalRowNumber()-3;progressBarHandle(redisKey,rowCount);//保存saveEmployee(fixedsalaryEmployeeBatchExtPO,originId,requestId);} catch (Exception e) {redisCacheUtils.delete(redisKey);log.error(e.getMessage(),e);throw new WebServiceException(e.getMessage(),e);}}@Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) {redisCacheUtils.delete(redisKey);}}).headRowNumber(3).sheet().doRead();}/*** 进度条处理* @param redisKey*/private void progressBarHandle(String redisKey, Integer rowCount) {String jsonStr = redisCacheUtils.get(redisKey);JSONObject jsonObject = null;if(ValidateUtil.isExist(jsonStr)) {jsonObject = JSONUtil.parseObj(jsonStr);Integer rowIndex = jsonObject.getInt("rowIndex");rowIndex += 1;jsonObject.put("rowIndex", rowIndex);jsonObject.put("rowCount", rowCount);} else {jsonObject = new JSONObject();jsonObject.put("rowIndex", 1);jsonObject.put("rowCount", rowCount);}redisCacheUtils.add(redisKey, jsonObject, 30, TimeUnit.MINUTES);}

redis获取进度数据

@Overridepublic String getProgressBar() {String redisKey = "importExcel:progressBar:"+ SecurityUtils.getLoginUser().get().getId();String value = redisCacheUtils.get(redisKey);String valueStr = String.format("进度条bar:value: %s",value);log.info(valueStr);return value;}

easyExcel导入excel实现动态进度条相关推荐

  1. .net导入Excel 并显示进度条

    在程序开发过程中,往往会涉及到将Excel表格导入到数据库中的需求,而当excel表格内容很多的时候,我们往往会很难去捕捉它的执行过程进度和一些错误信息,此时我们便可以通过以下方法去解决这些难题,具体 ...

  2. excel生成动态进度条

    背景:想用excel展示实时进度信息 但是用的图标需要开通某壳会员才可以使用 于是就想自己看看能不能做出来一个~ 接下来是用到的公式 =REPT("▓",(COUNTIF(D2:D ...

  3. EXCEL装逼指南之动态进度条(项目经理必备技能)

    EXCEL装逼指南之动态进度条(项目经理必备技能) 作为浪迹职场多年的混子(项目经理),是否常常对项目进度把控不利,汇报工作又含含糊糊让领导不知所以而经常惨遭领导羞辱,同事嘲笑? 那么如何做一份让领导 ...

  4. easyExcel 导入Excel数据

    easyExcel 导入Excel数据 最近公司项目需要导入几十万的Excel数据,我这里用的是现在最流行的easyExcel, 希望能帮助到你 首先导入jar包 <dependency> ...

  5. python 进度条_Python小程序系列——动态进度条(1)

    Python动态进度条I 开始我们的第一个Python程序. 显示一个动态进度条,在同一个位置显示从1%到100% 源代码附上来: import sys #有关Python运行环境的变量和函数impo ...

  6. python动态显示进度条_实例详解python如何轻松实现动态进度条

    本次的这篇文章主要是和大家分享了关于实例详解python如何轻松实现动态进度条,有需要的小伙伴可以看一下 思路及讲解 假设有一个1000000数据的列表(为了让进度条可以显示出来,很大的数据),我们每 ...

  7. bootstrap 滚动 进度条_bootstrap实现动态进度条效果

    Bootstrap的动态进度条: html: 创建一个modal   这里使用fade先将modal隐藏起来,然后modal里面嵌入progress 代码很简单 保存中:{{length}}% PS: ...

  8. 动态的给python添加进度条_python动态进度条的实现代码

    python动态进度条的实现代码,具体内容如下所示: 有时候我们需要使用print打印工作进度,正常使用print函数会导致刷屏的现象,举个最简单的例子,从1打印到10,每次停顿0.1秒 这样看起来很 ...

  9. ppt模板如何制作动态进度条?

    想要让自己的ppt模板更加的精美,一些小细节可以提升ppt模板制作的格调,这次我们就来看看ppt模板如何制作动态进度条?ppt家园给大家介绍一下ppt模板下载的小技巧. 模板入口: https://w ...

最新文章

  1. 日志平台(网关层) - 基于Openresty+ELKF+Kafka
  2. java文件上传下载服务并发超时,先收藏了
  3. 人的执念真的是非常的可怕
  4. 用小括号表达一个长字符串
  5. Java面向对象(10)--super关键字
  6. 遍历List过程中同时修改
  7. python3实用编程技巧_6.python3实用编程技巧进阶(一)
  8. jmeter如何通过后置处理器提取(正则提取器、json提取器)做接口关联?
  9. java处理超大csv文件_比较 csv 文件中数据差异
  10. Android 显示原理简介
  11. 利用函数求任意两个数之间的和
  12. excel中如何批量将所有的网址设为超链接
  13. hang计算机术语大全,行业英语学习
  14. 读取采购订单附件(GOS)-[BDS_GOS_CONNECTIONS_GET/SO_DOCUMENT_READ_API1]
  15. 解决:kubeadm init K8S初始化报错02
  16. adb shell get/setprop, setenforce...
  17. cobol 知识点集锦
  18. python中-是什么意思
  19. uiuc的计算机工程硕士学费标准,美国计算机硕士留学费用全都在这了!
  20. 计算机软考抵个税,软考证书怎么来抵扣个税

热门文章

  1. kaggle+feature engineering(知乎抄的
  2. 【VMCloud云平台】SCAP(四)连接公有云(二)
  3. 数据库-Elasticsearch进阶学习笔记(分片、映射、分词器、即时搜索、全文搜索等)
  4. win32 015使用菜单和加速键
  5. linux进程管道通信缺点,Linux 进程间通信(1) -- 管道
  6. python取整符号_python 取整
  7. 初试-基于神经网络的植物识别
  8. 开放域对话预训练模型总结
  9. 企查查爬取返回405错误的一种处理方法
  10. 互联网热点:“双十一”节奏提前,猿辅导、掌门教育积极转型素质教育