一.poi下载
excel 下载其实就是创建一个新的workbook, 前端请求url地址; 后台通过流的方式直接输出到页面。不需要前端有操作
一共有两总方式:
1. 创建一个workbook类,然后创建行,在创建列,然后往里面放数据
2. 从项目中读取一个excel的模板(这种方式是因为一些excel里面的样式很难在代码中实现, 所以直接读取一个excel进来,往里面放值;但是这种情况有一个问题,有些空的行,虽然看起来是空的,而且getRow为空,但是createRow的时候又报错;这就是因为虽然excel模板中看起来是空的,但是这一行是存在的一个空行;为了避免这个问题,把模板表头以下的所有行全部删除,就不会出现这个问题了)。
=======兄弟们,对不住了;公司既不准上网,又不准用U盘拷代码出去,手敲吧===================================
1.通过读取resources下的excel模板来创建workbook(这个excel模板是你自己用excel设置好表头等信息的excel,存放在resources目录下面)
2.通过传统的new对象的方式来创建workbook
一个sheet代表excel中的一页,一个excel里面是可以设置多个sheet,但是这样程序处理起来就要麻烦一些了。
表格设置居中:
通过传统的Workbook创建的sheet下载大量的数据会有卡顿的现象,把已经创建的sheet传换为SXSSWorkbook:
=======================================接下来是打包下载==========================================
在后台生成一个随机数作为存放在服务器的临时文件夹用于存放,在服务器打上excel打包之后的压缩包,然后输出下载,最后删除生成的临时文件夹:
==========================兄弟们,我能做的只有这么多了,剩下的靠你们自己了=============================
二.poi上传excel 注意分xls与xlsx,注意校验每一个小格子中的数据格式问题。
三.扩展
据说阿里的 easyexcel 或者easypoi 可以5行代码就读取excel了,有兴趣的可以尝试一下!