easyEscel
文章目錄
- 一、環(huán)境搭建
- 1、引入依賴
- 二、寫操作
- 1、創(chuàng)建實體類
- 2、測試類測試
- 三、讀操作
- 1、創(chuàng)建實體類
- 2、創(chuàng)建監(jiān)聽器
- 3、測試
一、環(huán)境搭建
此工具是阿里巴巴提供的開源工具,用來讀取excel表格中數(shù)據(jù),而且是一行一行讀,速度快,浪費資源少
1、引入依賴
<!--easyExcel--> <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.3</version> </dependency>二、寫操作
1、創(chuàng)建實體類
package com.esayexcel.test.excel;import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data;@Data public class DomeData {//設(shè)置excel表頭名@ExcelProperty("學生編號")private Integer sno;@ExcelProperty("學生姓名")private String name; }2、測試類測試
package com.esayexcel.test.excel;import com.alibaba.excel.EasyExcel;import java.util.ArrayList; import java.util.List;public class TestWrite {public static void main(String[] args) {//1、設(shè)置要寫入的文件的路徑String path="F:/2.xlsx";//需要寫入的內(nèi)容,隨便創(chuàng)建點,就不從數(shù)據(jù)庫取了,保證結(jié)果集放在List集合中即可List<DomeData> list=new ArrayList<>();for(int i=1;i<=10;i++) {DomeData domeData=new DomeData();domeData.setSno(i);domeData.setName("第"+i);list.add(domeData);}//2、調(diào)用easyExcel中方法,write是一個重載方法,有多種參數(shù),但都是第一個參數(shù)重載,有直接傳File對象的,有傳輸出流的,我這里用路徑//第二個參數(shù)是你實體類的對象//.sheet設(shè)置表名(每個excel工作鋪有多個sheet表)//.doWrite 將List集合寫入指定excelEasyExcel.write(path, DomeData.class).sheet("test").doWrite(list);} }三、讀操作
1、創(chuàng)建實體類
2、創(chuàng)建監(jiān)聽器
package com.esayexcel.test.excel;import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener;import java.util.Map;public class ExcelListener extends AnalysisEventListener {private Integer num=0;//按行讀取內(nèi)容@Overridepublic void invoke(Object o, AnalysisContext analysisContext) {System.out.println("第"+(num++)+"行"+o);}//讀取完成后@Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) {System.out.println("=========讀取完成=======");} }3、測試
package com.esayexcel.test.excel;import com.alibaba.excel.EasyExcel; public class TestWrite {public static void main(String[] args) {//1、設(shè)置要讀取的文件的路徑String path="F:/2.xlsx";//2、調(diào)用easyExcel中方法,read是一個重載方法,有多種參數(shù),但都是第一個參數(shù)重載,有直接傳File對象的,有傳輸出流的,我這里用路徑//第二個參數(shù)是你實體類的對象//第三個參數(shù)時你的監(jiān)聽器類//.sheet設(shè)置表名(每個excel工作鋪有多個sheet表)//.doRead 讀方法EasyExcel.read(path, DomeData.class,new ExcelListener()).sheet("test").doRead();} }總結(jié)
- 上一篇: 传统的寻呼机(俗称BB机)
- 下一篇: OUT与IN