首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

告别Apache POI,这才是Java读写Excel利器

Java领域解析、生成Excel比较有名框架有Apache poi、jxl等。但他们都存在一个严重问题就是非常耗内存。...64M内存1分钟内读取75M(46W行25列)Excel(当然还有急速模式能更快,但是内存占用会在100M多一点) easyExcel能大大减少占用内存主要原因是在解析Excel时没有将文件数据一次性全部加载到内存中...下图是easyExcel和POI在解析Excel对比图。 easyExcel采用一行一行解析模式,并将一行解析结果以观察者模式通知处理(AnalysisEventListener)。...这个类定义成 UserService 实现类内部类(推荐这种方式) //private UserService userService; @Override public...一些小建议 尽量使用DTO模式导出Excel 给导出Excel建立单独DTO模型 exportWithEasyExcel(excelDate,XXDTO.class,"订单.xlsx","订单

1.3K20

终于有一款组件可以全面超越Apache POI

功能对比:GcExcel VS Apache POI 公式数量 GcExcel支持452种Excel公式。...但在Apache POI中,使用高级API来增加条件格式判断会受限。因此,只能使用标记为内部用途低级类来处理Top10、高于平均值(AboveAverage)等格式化选项。...Apache POI目前不支持Sparklines。 剪切、复制、粘贴形状 GcExcel支持剪切、复制、粘贴形状Apache POI不支持。...过滤器数据类型 GcExcel广泛支持文本、数字、日期、颜色和图标等过滤器。 Apache POI仅支持基本AutoFilter,需要使用低级类来实现应用过滤或创建任何其他高级过滤器。...切片器 GcExcel支持带有数据透视表切片器,而Apache POI则不支持。 10. 导出CSV格式 GcExcel支持导出为CSV格式。 Apache POI没有提供内置导出CSV选项。

3.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

Apache POI与easyExcel:Excel文件导入导出技术深度分析

一、Apache POI:全面但重量级解决方案 Apache POI是一个历史悠久且功能全面的开源项目,用于处理Microsoft Office格式文件,包括Excel。...在导入Excel文件时,Apache POI会将整个文件加载到内存中,然后提供API来访问和操作文件中各个元素,如单元格、行、列等。...1.1 POI实现读取excel 下面是一演示如何使用 Apache POI 导入(读取)和导出(写入)Excel 文件(.xlsx 格式) org.apache.poi...EasyExcel 是在在POI解析引擎基础上改进,但并没有完全重写 Apache POI 整个解析引擎,特别是对于 XLSX 文件格式(即 Excel 2007 及以上版本所使用格式,POI...四、总结 Apache POI和easyExcel都是优秀Java库,用于处理Excel文件。Apache POI以其全面性和灵活性著称,提供了对Excel文件全面支持。

48310

Java数据可视化:报表技术

现在已经停止更新和 维护,所以本课程中只时简单地演示一下jxl代码,不会把它作为重点, 2.2.2 POI POIapache项目,可对微软Word,Excel,PPT进行操作,包括office2003...Apache POIApache软件基金会开源项目,由Java编写免费开源跨平台 Java API,Apache POI提供API给Java语言操作Microsoft Office功能。...操作excel 添加所需依赖: org.apache.poi poi...4.1、POI操作Excel高低版本区别 在POI包中有如下几个主要对象和excel几个对象对应: | 对应excel名称 | 低版本中类名 | 高版本中类名 | | :------------...,难道不大,但是代码写起来非常麻烦,所以明天给大家介绍一种非常简单方式,并且还带有样式。

2.6K40

报表技术

现在已经停止更新和 维护,所以本课程中只时简单地演示一下jxl代码,不会把它作为重点, 2.2.2 POI POIapache项目,可对微软Word,Excel,PPT进行操作,包括office2003...Apache POIApache软件基金会开源项目,由Java编写免费开源跨平台 Java API,Apache POI提供API给Java语言操作Microsoft Office功能。...操作excel 添加所需依赖: org.apache.poi poi...4.1、POI操作Excel高低版本区别 在POI包中有如下几个主要对象和excel几个对象对应: | 对应excel名称 | 低版本中类名 | 高版本中类名 | | :------------...,难道不大,但是代码写起来非常麻烦,所以明天给大家介绍一种非常简单方式,并且还带有样式。

2.5K30

Apache POI详解及Word文档读取示例

根据官网描述,poi是微软文档系列Java API。这里微软文档(Microsoft Documents),就是指word、excel(xls 和 xlsx)、PowerPoint 等。...poi官网地址:https://poi.apache.org/。目前最新版本为 22年1月14日发布POI5.2.0。...组成 2.1 4.1.0与5.2.0版本组成 我们下载了4.1.0 和 5.2.0 两个版本bin包,并解压后进行对比: auxiliary,lib,ooxml-lib几个目录相同,内部依赖暂时不做对比...2.2 各jar包作用 在官网components中有描述:Apache POI - Component Overview,这更详细解释大家可以直接看原文内容:https://poi.apache.org...下图是操作文档类型与jar包之间关系,通过这张表,可以明确当我们仅需要操作word或excel,以及2003或2007版本时,分别需要引入哪几个jar包(或maven依赖): poi包内各jar包之间依赖关系

6.2K31

sql2java-excel(二):基于apache poi实现数据库表导出spring web支持

这几年一直在根据工作需要维护升级,最近项目中需要对数据库记录提供导出excel功能。 就开始学习apachePOI,参照网上示例实现了单张表导出。...} fillColor 单元格填充颜色,参见{@link org.apache.poi.ss.usermodel.IndexedColors} horizontalAlign 导出字段水平对齐方式,...参见{@link org.apache.poi.ss.usermodel.HorizontalAlignment} handler ExcelHandlerAdapter.class 自定义数据处理器...而color,filleColor字段在三个位置定义注解中并不冲突,所以遵循合并原则 关于sql2java-excel入门使用说明参见上一篇博客: 《sql2java-excel(一):基于apache...poi实现数据库表导出及支持spring web》

1.5K40

Apache POI详解及Word文档读取示例

根据官网描述,poi是微软文档系列Java API。这里微软文档(Microsoft Documents),就是指word、excel(xls 和 xlsx)、PowerPoint 等。...poi官网地址:https://poi.apache.org/。目前最新版本为 22年1月14日发布POI5.2.0。...2.1 4.1.0与5.2.0版本组成 我们下载了4.1.0 和 5.2.0 两个版本bin包,并解压后进行对比: auxiliary,lib,ooxml-lib几个目录相同,内部依赖暂时不做对比...2.2 各jar包作用 在官网components中有描述:Apache POI - Component Overview,这更详细解释大家可以直接看原文内容:https://poi.apache.org...下图是操作文档类型与jar包之间关系,通过这张表,可以明确当我们仅需要操作word或excel,以及2003或2007版本时,分别需要引入哪几个jar包(或maven依赖): poi包内各jar包之间依赖关系

2.8K40

sql2java-excel(一):基于apache poi实现数据库表导出及支持spring web

这几年一直在根据工作需要维护升级,最近项目中需要对数据库记录提供导出excel功能。 就开始学习apachePOI,参照网上示例实现了单张表导出。...并进一步将它封装成一个通用库成为sql2java下子项目sql2java-excel.以方便在其他项目中技术复用。 本文开始介绍sql2java-excel使用.... 3.10.0 excelGenerator 特性 基于apach/poi实现数据记录导出为excel...使用@ExcelSheet,@ExcelColumn注解 上面的输出Excel输出列名是JavaBean中英文字段名,而且导出字段顺序不符合我们要求,我们可以通过为每个字段定义@ExcelColumn.../ExcelExportTest.java 关于Spring支持参见下一篇博客: 《sql2java-excel(二):基于apache poi实现数据库表导出spring web支持》

74460

JAVA大数据导出EXCEL方案

它通常具有以下特征: 1)纯文本,可以使用Excel文本编辑器打开; 2)每条记录被分隔符分隔为字段(典型分隔符有逗号、分号或制表符;有时分隔符可 以包括可选空格);...导出方案 一、使用Apache POI SXSSFWorkbook方式进行导出Excel。...方案简介 Apache POI 是用Java编写免费开源跨平台 Java API,Apache POI提供API给Java程式对Microsoft Office格式档案读和写功能。...ApachePOI组件是Java操作Microsoft Office办公套件强大API,由于Office 2007文件结构完全不同于2003,POI有不同处理API,当导出格式为Office 2003...推荐使用情况:1)导出文件格式为文本文件;2)不在意导出文件过大。

6K20

Java中用Apache POI生成excel和word文档

概述: 最近在做项目的过程中遇到了excel数据导出和word图文表报告导出功能,最后决定用Apache POI来完成该项功能。...本文就项目实现过程中一些思路与代码与大家共享,同时,也作为自己一个总结,以备后用。 功能: 1、从数据库查询数据导出为excel; 2、导出word包括,内容有文字,图片,表格等。 效果: ?...; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFFont...; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import...HSSFSheet sheet = wb.createSheet("学生表一"); // 第三步,在sheet中添加表头第0行,注意老版本poiExcel行数列数有限制

3K40

POI解析单元格格式

cell.getCellStyle().getDataFormat();根据这个值进行时间、日期格式判断; POI读取出来结果也是有些变化;需要在实际项目中进行确认; 日期格式遍历:Excel2007...和Excel2003都是这样结果; 时间格式遍历: 增加了其它日期格式处理: // 读取cell单元格值,如果为日期格式,进行转换 @SuppressWarnings("deprecation...单元格设置为文本,但是存储数字读取到字符串为2.123E5之类指数类型,所以笔者选择上面的处理方式将非日期单元格先强制设置为文本格式,然后按照文本格式读取!...} double value = cell.getNumericCellValue(); Date date = org.apache.poi.ss.usermodel.DateUtil.getJavaDate...:在调用getCellValue方法之前不用设置该单元格格式,否则解析有可能不成功(因为你不知道单元格格式,除非你采用getCellValue方法内部方式判断--冗余代码)。

67810

7 行代码优雅地实现 Excel 文件导出功能?

Apache 开源框架 poi, 或者 jxl 都可以实现啊。面向百度编程,把代码模板 copy 下来,根据自己业务再改改,能有多难? 嗯.....二、Apache poi、jxl 缺陷 在说如何实现之前,我们先来讨论一下传统 Excel 框架不足!...除了上面说Apache poi、jxl 都存在生成 excel 文件不够简单优雅快速外,它们都还存在一个严重问题,那就是非常耗内存,严重时会导致内存溢出。...以下是官方介绍: 四、EasyExcel 解决了什么 主要来说,有以下几点: 传统 Excel 框架,如 Apache poi、jxl 都存在内存溢出问题; 传统 excel 开源框架使用复杂、繁琐;...03, 07 版本均有行数、列数限制: 版本 最大行 最大列 Excel 2003 65536 256 Excel 2007 1048576 16384 csv 由于是文本文件,实际上没有最大行数限制

2.3K31

Java在Excel中进行数据分析

既然这个东西这么好用,那可不可以我也搞一个类似的分析工具,这样就可以用它来记录生活中点点滴滴。由于本人工作性质,对Excel比较熟悉,首先想到就是可不可以用一个表格可视化工具来实现这个功能。...说干就干,先上网找了找了一些Excel中可视化工具样式,看了看在Excel中比较流行就是图表(柱形图、条形图等)和数据透视图了。...发现可以使用Apache POI库来实现: import org.apache.poi.ss.usermodel.*; import org.apache.poi.xssf.usermodel.*;...; } } 除了使用Apache POI库,还发现了一款商业软件GcExcel,由于不太不了解这个东西,所以简单ChatGpt了一下GcExcel, 查完之后发现,和Apache POI库类似...*OutsideEnd*); workbook.save("tutorial.xlsx"); } } 最终Excel样式: 通过以上实验,使用Apache POI和GcExcel都可以在Excel

19430
领券