欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

java五行代码导出Excel

程序员文章站 2022-04-29 18:07:30
[TOC] 已经写过两种Excel导出插件了。今天再安利一个极简的导出Excel的框架,导出无特殊格式要求的Excel,只需五行代码; 先看代码 再看效果 EasyExcel 本案例用到的框架是阿里推出的EasyExcel,EasyExcel从第一次提交代码(2018年2月)到现在,在GitHub上 ......

已经写过两种excel导出插件了。今天再安利一个极简的导出excel的框架,导出无特殊格式要求的excel,只需五行代码;

先看代码

java五行代码导出Excel

再看效果

java五行代码导出Excel

easyexcel

本案例用到的框架是阿里推出的easyexcel,easyexcel从第一次提交代码(2018年2月)到现在,在github上已经获得6590个star

java五行代码导出Excel

以下是介绍

java解析、生成excel比较有名的框架有apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套sax模式的api可以一定程度的解决一些内存溢出的问题,但poi还是有一些缺陷,比如07版excel解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel重写了poi对07版excel的解析,能够原本一个3m的excel用poi sax依然需要100m左右内存降低到kb级别,并且再大的excel不会出现内存溢出,03版依赖poi的sax模式。在上层做了模型转换的封装,让使用者更加简单方便

使用easyexcel导出excel,其特殊之处在于对实体类的处理,需要将被导出的实体类继承自com.alibaba.excel.metadata.baserowmodel; 然后在属性上通过注解com.alibaba.excel.annotation.excelproperty;设置表头及样式

pom.xml引入jar包

<dependency>
    <groupid>com.alibaba</groupid>
    <artifactid>easyexcel</artifactid>
    <version>1.1.2-beta5</version>
</dependency>

修改需要导出的实体类

java五行代码导出Excel

至此,最简单的excel导出就实现了。

这篇文章写得有点短,因为easyexcel代码精简,上手简单。再者,写这篇文章并不为分析技术,只是给还没听过easyexcel的同学安利一下。

附:

java按模板导出excel———基于aspose实现

java无模板导出excel,apache-poi插件实现