poi导入导出excel数据,使用idea

  1. 简介
    easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员 就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板。
    官网:
    https://opensource.afterturn.cn/doc/easypoi.html
  2. maven坐标
<dependency>
    <groupId>cn.afterturn</groupId>
    <artifactId>easypoi-annotation</artifactId>
    <version>4.0.0</version>
</dependency>
<dependency>
    <groupId>cn.afterturn</groupId>
    <artifactId>easypoi-base</artifactId>
    <version>4.0.0</version>
</dependency>

  1. 最简单的导入
    完成最简单的导入,只需要两步:一使用注解配置实体类,二调用工具类
    实体类(省略get/set方法):
public class API implements Serializable {

    @Excel(name = "接口名称")
    private String name;
    @Excel(name = "接口编号")
    private String id;
    @Excel(name = "接口提交方式")
    private String type;
    @Excel(name = "接口地址")
    private String url;
    @Excel(name = "参数类型")
    private String contentType;
}

@Excel(name = “接口名称”)这个注解是啥意思呢?name属性表示excel表头。如图:
在这里插入图片描述
当我们导入excel时,就会按照@Excel注解的映射关系封装API实体类。

工具类:

FileInputStream fis = new FileInputStream(EXCEL_PATH);
//导入参数设置类
ImportParams params = new ImportParams();
List<API> importExcel = ExcelImportUtil.importExcel(fis, API.class, params);

总共三行代码,第一行加载excel文件,第二行设置导入参数,第三行根据导入参数返回对应结果并封装成List集合。
这三个代码中主要讲解第二行和第三行,第二行是导入参数设置,它能给我们提供什么设置呢?参考下表:
在这里插入图片描述
对照完这张表之后,你会发现即使我们不对ImportParams做任何设置,也会有对应的默认值。
那么第二句代码就能翻译成:读取第一个Sheet且只读取第一个,表头是Sheet的第一行且只有一行。
最终我们就能得到第一个Sheet中每一行数据,并且每一行被封装成了API对象也就是一个List。
有了这个集合之后我们需要导入的数据就能任由我们如何处理了,是不是很简单。

  1. 最简单的导出
List<API> list = new ArrayList<API>();
ExportParams exportParams = new ExportParams();
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, API.class, list);
workbook.write(new FileOutputStream(EXCEL_PATH));

导出也只有四句代码。
第一句是需要导出的数据集合,第二句导出参数,第三句获取导出workbook对象,第四句通过输出流导出数据到excel中。
其中第二句也是有很多设置的,我们就用默认设置也能是导出的。第三句也要用到API实体类中的注解映射关系。

  1. 本文由柠檬班罗杰老师原创,转载需注明出处!地址由timestamp所以不能直接给连接:
    https://www.sogou.com/web?query=poi%E5%AF%BC%E5%85%A5excel%E6%95%B0%E6%8D%AE&_ast=1594386355&_asf=www.sogou.com&w=01025001&cid=&s_from=result_up&oq=poi+%E5%AF%BC%E5%85%A5excel&ri=1&sourceid=sugg&suguuid=446b708f-4349-4298-a955-60da49fc24c5&stj=1%3B24%3B0%3B0&stj2=0&stj0=1&stj1=24&hp=224&hp1=&suglabid=suglabId_1&sut=12407&sst0=1594387295650&lkt=0%2C0%2C0&sugsuv=008F98E4758826BC5DB8F5F3D3C99151&sugtime=1594387295650

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值