阿里EasyExcel
EasyExcelEasyExcel特点Java领域解析、生成Excel比较有名的框架有Apache poi、jxl等。但他们都存在一个严重的问题就是非常的耗内存。如果你的系统并发量不大的话可能还行,但是一旦并发上来后一定会OOM或者JVM频繁的full gc。 EasyExcel是阿里巴巴开源的一个excel处理框架, 以使用简单、节省内存著称 。EasyExcel能大大减少占用内存的主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中,而是从磁盘上一行行读取数据,逐个解析。 EasyExcel采用一行一行的解析模式,并将一行的解析结果以观察者的模式通知处理(AnalysisEventListener)。 Excel导入导出的应用场景 1、数据导入:减轻录入工作量 2、数据导出:统计信息归档 3、数据传输:异构系统之间的数据传输 引入依赖 com.alibaba easyexcel 3.0.5 简单读Excel格式
创建实体类 import lombok.Data; @Data public class easy { //字段名自己设定 private int id; private String className; private String sno; private String name; private String path; private String filename; private String fileLine; }创建监听类 import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.it.entity.easy; import java.util.Map; public class ExcelListener extends AnalysisEventListener { //一行一行读取excel内容 @Override public void invoke(easy data, AnalysisContext analysisContext) { System.out.println(data); } //读取表头内容 @Override public void invokeHeadMap(Map headMap, AnalysisContext context) { System.out.println("表头:"+headMap); } //读取完成之后 @Override public void doAfterAllAnalysed(AnalysisContext analysisContext) { } }进行使用
方法1 @Test void contextLoads() { // 写法1,这种写法简单 String fileName = "E:easy.xlsx"; // 这里 需要指定读用哪个class去读,然后读取第一个sheet 文件流会自动关闭 EasyExcel.read(fileName, easy.class, new ExcelListener()).sheet().doRead(); }
方法2 @Test public void readExcel() throws FileNotFoundException { InputStream in = new BufferedInputStream(new FileInputStream("E:easy.xlsx")); //easy是实体类 ExcelReader excelReader = EasyExcel.read(in, easy.class, new ExcelListener()).build(); ReadSheet readSheet = EasyExcel.readSheet(0).build(); excelReader.read(readSheet); // 这里千万别忘记关闭,读的时候会创建临时文件,到时磁盘会崩的 excelReader.finish(); }简单写
实体类已经在上面弄过了,这边直接用即可。写操作不用写监听 public static void main(String[] args) { String fileName = "E:easy.xlsx"; EasyExcel.write(fileName,easy.class).sheet("工作表1").doWrite(data()); } private static List data() { List list = new ArrayList<>(); easy e = new easy(); e.setId(167); e.setClassName("专硕5班"); e.setSno("yj20201211"); e.setName("LLL"); e.setPath("storageinnobasedict"); e.setFilename("dict0dict.c"); e.setFileLine("4531-5048"); list.add(e); return list; }
官方认证全国美食地图来了,你的家乡美食上榜了吗?3月29日,工信部国家发展改革委等十一部门联合发布关于培育传统优势食品产区和地方特色食品产业的指导意见。除了具体的发展目标和重点任务,指导意见还推出了全国美食地图,看看你的家乡美食
早餐店2元一碗的鸡蛋汤,在家就能做,简单又美味北方很多街边早餐店都有那么一款鸡蛋汤,薄薄的鸡蛋花,绿油油的香菜碎,看着很普通,但是味道真的还不错。和油条煎包是绝配。寒冷的冬天喝上一碗,浑身暖和。还记得几年前是2元一大碗,不过好
芋头这做法火了,饭店一盘卖48元,在家成本不到8元,家人都爱吃大家好啊,我是小青。喜欢吃芋头的朋友要收藏了,今天来分享一道芋头好吃又简单的做法,出锅后比红烧肉还要香,家里来客人招待也是很有面子,营养又美味,下面就来看看是怎么做的吧。首先准备一
这个沈阳小伙拥有一颗大心脏在近日结束的射击世界杯印度站比赛中,来自沈阳的射击运动员张珏铭在男子25米手枪速射项目中发挥出色,连续战胜奥运冠军世锦赛亚军等实力选手,首次获得个人项目世界冠军。尤其是在决赛最后一
食物镀金真香?当心你的身体!在网红店米其林林立时代,餐饮商家为出圈,近年来纷纷推出各种网红菜品,金箔美食凭借华丽的颜值贵气的价格突围而出,即使身价翻倍,依然成为消费者追逐的新宠。但金箔美食真的好吃吗?真的能吃
体坛新声在中国足球凛冬中,歌一曲没有理想的人不伤心又一次,李玮锋真切地感受到了中国足球这个凛冬的彻骨寒意。这名前国脚于上赛季中途接过广州城帅印,带队艰难完成保级任务。但留在中超,并未帮助广州城迎来命运的转机。3月29日上午,中国足
这种听力损伤,请务必重视!三岁小女孩,连续两天半夜突然坐起来说妈妈妈妈,有人在扫地这究竟是怎么回事?原来,孩子是患上了分泌性中耳炎广州市妇女儿童医疗中心耳鼻喉科副主任医师王小亚表示这种疾病,约9成学龄前儿童
邓琳琳入职安师大首次开讲冠军之路做好人生规划,培养一颗大心脏大皖新闻讯在赛场上翩若惊鸿,展现中国健儿风姿从北大毕业后,依旧在为中国体育事业奋斗。她是中国唯一一位蝉联两届奥运会冠军的女子体操运动员奥运冠军邓琳琳。今年2月,她入职安徽师范大学,
月经期不宜多摄入的食物!月经不调痛经等问题的影响可大可小。有些女性经期只是轻微的腹胀腰酸等不适,而有的女性会出现腹痛难忍的情况。严重的月经不调会影响女性孕育下一代,应对月经不调和痛经,在饮食方面应注意以下
熬汤时一定要避开这种食材搭配,小心嘌呤超标!肾不好的人千万注意美味的汤品能给人体带来营养和健康的双重享受,素有菌菇皇后之称的香菇,因其味道鲜美质地柔嫩,常被当做肉汤搭档使用。不过,在汤鲜味美的掩饰下,香菇肉汤却暗含危机。香菇肉小心嘌呤超标!嘌
一个癌字三个口有哪些食物刺客要远离?众所周知,癌症对人类健康构成了重大威胁,已成为全世界重要的共同卫生问题之一。世界癌症研究基金会发布的一项报告指出,不健康的饮食会增加癌症的发生风险。据大量研究表明,3540的癌症与