1-首先在pom.xml里添加依赖

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>1.1.2-beat1</version>
</dependency>

2-新建一个监听类

package com.leo;

import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;

import java.util.ArrayList;
import java.util.List;

/** * @ClassName: ExcelListener * @Author: Leo * @Description: * @Date: 7/29/2019 10:21 AM */
public class ExcelListener extends AnalysisEventListener {
    //自定义用于暂时存储data。
    //可以通过实例获取该值
    private List<Object> datas = new ArrayList<Object>();

    public void invoke(Object object, AnalysisContext context) {
        System.out.println("当前行:" + context.getCurrentRowNum());
        System.out.println(object);
        datas.add(object);//数据存储到list,供批量处理,或后续自己业务逻辑处理。
        doSomething(object);//根据自己业务做处理
    }

    private void doSomething(Object object) {
        //1、入库调用接口
    }

    public void doAfterAllAnalysed(AnalysisContext context) {
        datas.clear();//解析结束销毁不用的资源
    }

    public List<Object> getDatas() {
        return datas;
    }

    public void setDatas(List<Object> datas) {
        this.datas = datas;
    }
}

3-主函数测试使用

package com.leo;

import com.alibaba.excel.EasyExcelFactory;
import com.alibaba.excel.metadata.Sheet;

import java.io.IOException;
import java.io.InputStream;

public class Main {

    public static void main(String[] args) {
   
        try {
            InputStream inputStream = Main.class.getClassLoader().getResourceAsStream("zgh.xlsx");
            ExcelListener excelListener = new ExcelListener();
            EasyExcelFactory.readBySax(inputStream, new Sheet(1, 1), excelListener);
            inputStream.close();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

4-项目地址:https://github.com/alibaba/easyexcel