介绍
这期内容当中小编将会给大家带来有关怎么在SpringBoot中利用EasyExcel导入Excel文件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
1,在砰的一声。xml中添加EasyExcel依赖
, & lt; dependency> ,,& lt; groupId> com.alibaba ,,& lt; artifactId> easyexcel ,,& lt; version> 2.1.3 & lt;才能/dependency>
2,创建EasyExcel映射实体类
import com.alibaba.excel.annotation.ExcelProperty; public class  ExcelEntity { ,//ExcelProperty中的参数要对应Excel中的标题 ,@ExcelProperty (“ID") ,private int ID; ,@ExcelProperty (“NAME") ,private String 名称; ,@ExcelProperty (“AGE") ,private int 年龄; ,public ExcelEntity (), { ,} ,public ExcelEntity (int ID, String 名字,,int 年龄),{ 时间=this.ID 才能;ID; this.name 才能=,名称; 时间=this.age 才能;年龄; ,} ,public int  getID (), { return 才能;ID; ,} ,public void  setID (int ID), { 时间=this.ID 才能;ID; ,} ,public String  getName (), { return 才能,名字; ,} ,public void  setName (String 名称),{ this.name 才能=,名称; ,} ,public int  getAge (), { return 才能;年龄; ,} ,public void  setAge (int 年龄),{ 时间=this.age 才能;年龄; ,} }
3,创建自定义Easyexcel的监听类
- <李>
这个监听类里面每一个ExcelEntity对象代表一行数据
李> <李>在这个监听类里面可以对读取到的每一行数据进行单独操作
李> <李>这里的读取的数据是按照Excel中每一条数据的顺序进行读取的
李>import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import java.util.ArrayList; import 并不知道; public class  UploadExcelListener extends AnalysisEventListener< ExcelEntity>, { ,private static  final Logger  Logger =, LoggerFactory.getLogger (LoggerItemController.class); ,public static  final List< ExcelEntity>, list =, new ArrayList<在(); ,@Override ,public void 调用(ExcelEntity excelEntity, AnalysisContext 上下文),{ logger.info才能(String.valueOf (excelEntity.getID ())); logger.info才能(excelEntity.getName ()); logger.info才能(String.valueOf (excelEntity.getAge ())); list.add才能(excelEntity); 以前,}>4,创建控制器
import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelReader; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation。*; import org.springframework.web.multipart.MultipartFile; import java.io.IOException; import java.io.InputStream; import 并不知道; @RestController @CrossOrigin @RequestMapping (“/loggerItem") public class  LoggerItemController { ,//MultipartFile 这个类一般是用来接受前台传过来的文件 ,@PostMapping (“/upload") ,public List< ExcelEntity>,上传(@RequestParam (=value “multipartFile"), MultipartFile multipartFile) { if 才能;(multipartFile ==, null) { ,,return 零; ,,} InputStream 才能;拷贝=,空; try {才能//,,,从multipartFile获取InputStream流 ,,=,拷贝multipartFile.getInputStream (); ,,/* ,,,*,EasyExcel 有多个不同的阅读方法,适用于多种需求 ,,,*,这里调用EasyExcel中通过InputStream流方式读取Excel的阅读方法 ,,,*,他会返回一个ExcelReaderBuilder类型的返回值 ,,,*,ExcelReaderBuilder中有一个doReadAll方法,会读取所有的表 ,,*/,,EasyExcel.read (ExcelEntity.class, new UploadExcelListener ()) ,,,,.sheet (“Sheet1") ,,,,.doRead ();//,,,每次EasyExcel的阅读方法读取完之后都会关闭流,我这里为了试验doReadAll方法,所以重新获取了一次 ,,=,拷贝multipartFile.getInputStream (); ,,/* ,,,*,ExcelReaderBuilder中的片方法,需要添加读取的表名作为参数 ,,,*,并且不要忘记在后面再调用一下doReadAll方法,否则不会进行读取操作 ,,*/,,EasyExcel.read (ExcelEntity.class, new UploadExcelListener ()) .doReadAll (); ,,},catch (IOException e), { ,,e.printStackTrace (); ,,} return 才能;UploadExcelListener.list; ,} }怎么在SpringBoot中利用EasyExcel导入Excel文件