想要后端返回的数据,导入excel-----fastexcel

又是在刷视频的时候,刷到了导入excel的一个工具,想到了实习的时候使用的easyexcel,所以特地来了解下fastexcel的使用方法。

1. 项目介绍
FastExcel 是由原 EasyExcel 作者创建的新项目,旨在提供高性能、简洁易用的 Excel 文件处理工具。FastExcel 不仅能处理大规模的 Excel 数据,而且具有较低的内存占用,非常适合用于处理大型 Excel 文件。该项目完全兼容 EasyExcel 的所有功能和特性,并在此基础上进行了性能优化和功能增强。FastExcel 采用 Apache 协议,可免费用于商业和非商业项目。

添加依赖

在 pom.xml 文件中添加 FastExcel 的依赖:


    cn.idev.excel
    fastexcel
    1.1.0

读取excel文件

import cn.idev.excel.FastExcel;
import cn.idev.excel.read.listener.ReadListener;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
 
public class DemoDataListener implements ReadListener {
    @Override
    public void invoke(DemoData data, AnalysisContext context) {
        System.out.println("解析到一条数据" + JSON.toJSONString(data));
    }
 
    @Override
    public void doAfterAllAnalysed(AnalysisContext context) {
        System.out.println("所有数据解析完成!");
    }
}
 
public static void main(String[] args) {
    String fileName = "demo.xlsx";
    FastExcel.read(fileName, DemoData.class, new DemoDataListener()).sheet().doRead();
}
创建 Excel 文件
import cn.idev.excel.FastExcel;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.ExcelIgnore;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
 
public class DemoData {
    @ExcelProperty("字符串标题")
    private String string;
    @ExcelProperty("日期标题")
    private Date date;
    @ExcelProperty("数字标题")
    private Double doubleData;
    @ExcelIgnore
    private String ignore;
}
 
public static List data() {
    List list = new ArrayList<>();
    for (int i = 0; i < 10; i++) {
        DemoData data = new DemoData();
        data.setString("字符串" + i);
        data.setDate(new Date());
        data.setDoubleData(0.56);
        list.add(data);
    }
    return list;
}
 
public static void main(String[] args) {
    String fileName = "demo.xlsx";
    FastExcel.write(fileName, DemoData.class).sheet("模板").doWrite(data());
}

你可能感兴趣的:(想要后端返回的数据,导入excel-----fastexcel)