1. 第一步引入pom

引入easyexcel 的pom依赖

<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.6</version>
</dependency>

我输出时和实体类字段Date(时间格式化)用到了fastjson 用到了就引入,用不到可以不引

<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.75</version>
</dependency>

2. 第二步写代码

一定要有无参构造

@Data
public class ExcelEntity {private String name;@JSONField(format = "yyyy-MM-dd")private Date birthday;private Integer age;
}

此处我延续了AnalysisEventListener的泛型,(易扩展) 此类不支持Spring IOC

public class ExcelListener<T> extends AnalysisEventListener<T> {private static final int BATCH_COUNT = 5;List<T> list = new ArrayList<T>();// 此处可传Spring IOC对象进行保存数据库public ExcelListener(){};// 读取每一条@Overridepublic void invoke(T data, AnalysisContext context) {System.out.println(JSON.toJSONString(data));if (list.size() >= BATCH_COUNT) {saveData();// 存储完成清理 listlist.clear();}list.add(data);}// 读取完毕后@Overridepublic void doAfterAllAnalysed(AnalysisContext context) {System.out.println("读取完成!");saveData();list.clear();}// 保存操作private void saveData(){System.out.println("存入数据库");}
}

写接口Controller

@PostMapping("/addExcel")
public String addExcel(MultipartFile file) throws IOException {EasyExcel.read(file.getInputStream(), ExcelEntity.class, new ExcelListener<ExcelEntity>()).sheet().doRead();return "ok";
}

3. 测试结果

成功结果!

控制台输出结果!

{"age":1,"birthday":"2020-11-19","name":"张1"}
{"age":2,"birthday":"2020-11-19","name":"张2"}
{"age":3,"birthday":"2020-11-19","name":"张3"}
{"age":4,"birthday":"2020-11-19","name":"张4"}
{"age":5,"birthday":"2020-11-19","name":"张5"}
{"age":6,"birthday":"2020-11-19","name":"张6"}
存入数据库
{"age":7,"birthday":"2020-11-19","name":"张7"}
{"age":8,"birthday":"2020-11-19","name":"张8"}
{"age":9,"birthday":"2020-11-19","name":"张9"}
{"age":10,"birthday":"2020-11-19","name":"张10"}
读取完成!
存入数据库

有问题质询QQ:248048521,欢迎技术交流

java导入Excel(使用阿里巴巴的easyexcel)相关推荐

  1. java 导入excel 日期格式转换

    java 导入excel 日期格式转换 导入日期格式后 获取到的value值为 数值或小数值 直接上硬货 cell = row.getCell(4);String go_time = getCellV ...

  2. Java导入Excel工具类使用教程

    前言: 本工具类提供了Excel导入功能,通过反射机制将Excel中数据映射到实体类中,从而获取Excel数据,工具类依赖org.apache.poi包.支持RESTful API,支持Spring ...

  3. JAVA 导入excel文件

    JAVA 导入excel文件 背景 –>struts2框架 –>from表单提交excel模板文件 –>java获取excel数据 步骤 1.获取excel文件 struts2 fr ...

  4. Java导入excel

    Java导入excel @ApiOperation(value = "导入冲压需求量计划") @PostMapping(value = "import2.do" ...

  5. JAVA操作Excel之阿里巴巴EasyExcel

    EasyExcel JAVA解析Excel工具 POI非常耗内存,会出现内存溢出 以下是EasyExcel和POI解析Excel的对比图 导入依赖 <dependency><grou ...

  6. Java操作Excel:POI和EasyExcel

    文章与博客园同步,欢迎访问:https://www.cnblogs.com/MessiXiaoMo3334/p/13288568.html 代码地址:https://gitee.com/ilovemo ...

  7. 【工具篇】java导入excel工具类,简单通用,绝对值得你收藏

    定义导入的excel模板 定义需要导入的EXCEL模板,EXCEL格式变更,只需要变更对应的枚举信息就可以,如果定义多个EXCEL模板, 只要定义多个枚举就行 package org.util.exc ...

  8. word录入表单数据 java 导入系统,java导入excel | 怎么把excel中的数据批量导入到word中的表格中...

    用javascript怎么实现把excel中的数据批量导入到数据库表中 这个js不能直接实现吧 我们程序用到 先读取excel内容转换成数组 然后放到页面上 再提交表单 储存 MySql如何批量添加数 ...

  9. java导入excel 实例_Java数据导入功能之读取Excel文件实例

    在编程中经常需要使用到表格(报表)的处理主要以Excel表格为主.下面给出用java读取excel表格方法: 1.添加jar文件 java导入导出Excel文件要引入jxl.jar包,最关键的是这套A ...

最新文章

  1. java lambda表达式详解_Java8新特性Lambda表达式详解
  2. 沈逸老师ubuntu速学笔记(2)-- ubuntu16.04下 apache2.4和php7结合编译安装,并安裝PDOmysql扩展...
  3. 数字时代企业信息安全如何保障? VMware原生安全前来“保驾护航”
  4. 苹果宣布将把语音助手Siri整合到Apple Music服务中
  5. Python+sklearn决策树算法使用入门
  6. 分布式事务中常见的三种解决方案
  7. java伪唤醒,谈谈JDK线程的伪唤醒
  8. Win2008r2 由ESXi 转换到 HyperV的处理过程
  9. Netbeans使用问题整理
  10. error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file
  11. js打开服务器缓存文件夹路径,浅谈微信页面入口文件被缓存解决方案
  12. Received status code 502 from server: Bad Gateway
  13. 图麟信息科技联合创始人张勋:全面商用化到来,AI全方面融入行业
  14. pytorch的ImageNet类
  15. U盘防毒最强方案(创建删不掉的autorun.inf文件夹)
  16. OpenCV 神经网络 - 多层感知器(MLP)
  17. 《小白H5成长之路19》if判断语句的一些用法
  18. 安卓接收消息通知——从后台发出到显示消息弹窗详解
  19. 大龄处男是怪胎还是珍品
  20. [dfs][模拟网络流] Luogu P4189 星际旅行

热门文章

  1. 基于stm32的流水灯实现
  2. SLF4j使用、统一系统中所有的日志记录到slf4j
  3. EditText的一些属性
  4. 工业机械装备及机电产品从设计、制造、运行控制到生产过程
  5. 故地重游,熟悉又陌生。
  6. 茫无头绪的瞎侃(一)
  7. [pinia]报错信息:getActivePinia was called with no active Pinia. Did you forget to install pinia
  8. 计算机桌面关不了机,电脑关不了机怎么办,详细教您怎么解决电脑关不了机
  9. 【英语阅读】纽约时报 | 上海迪士尼乐园限流重新开放
  10. 反转二叉树 java_反转二叉树【Java】