最近项目中遇到一个问题,就是ireport导出word,导出数据量打的时候,word的有20多M。打开word,就死机了;客户强烈要求导出word,不能到pdf,然后项目经理就叫我解决这个问题,差不多花了四天的时间,还是没搞出点眉目:怀疑导出word很大:原因有二:1:模板画的有问题,2:生成word的方法有问题,尝试把模板中的textfiled线用线条代替,生成word的大小是减少了,但数据量大,还是不行;到网上去下了个ireport-4.1.3,看见一个table控件,想让他代替ireport里detai里面的字段,但尝试了很长时间都没搞会这个控件,因为我的数据是从List中获取的,不太会配dataset的数据源,后来尝试直接连数据库,导出word来看发现,4500条左右的数据,word会有10多M,还是不行,因为后台导出word的时候,是
public void exportDoc(List<JasperPrint> JasperPrints, String fileName, OutputStream os) throws JRException {
JRAbstractExporter exporter = new JRRtfExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST, JasperPrints);
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, fileName);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, os);
exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET,Boolean.FALSE);
exporter.exportReport();
}
生成的是RTF文件,RTF文件一般都是很大的,因为它是通用的文件格式
在新版的API上找到一个类:JRDocxExporter 这个生成docx文件只能用word2007及以上版本才能打开
JRAbstractExporter exporter = new JRDocxExporter();文件从20多M到只有100多K。
分享到:
相关推荐
iReport是一款强大的报表设计工具,尤其在版本4.8中,它提供了丰富的功能,使得用户能够轻松地创建、编辑和导出各种类型的...如果你是Java开发者,或者需要处理大量的数据报表,iReport 4.8无疑是一个值得尝试的选择。
- **报表布局显示不正确**:仔细检查布局设计,确保所有元素都正确放置且适应不同的数据量。 通过以上详细介绍,我们可以看到 iReport 5.1.0 作为一款经典的报表设计工具,在数据处理、报表生成等方面提供了强大的...
在 ireport 中,设置导出报表时的分页是关键,确保每个页面的数据量适中。开发者需要调整报表的分组和页面大小设置,以实现理想的分页效果。 3.1.2 每页显示*页 当需要在每一页底部显示当前页码和总页数时,可以...
在iReport中,可以创建复杂的表头,例如分组表头或多级表头,这在处理大量分类数据时非常有用。通过报表元素的组合和布局,可以实现灵活的表头结构。 - **交叉表的设计** 交叉表(pivot table)是一种强大的数据...
标题中的"ireport itext jasper-compiler"涉及到了三个关键组件:iReport、iText和JasperReports的编译器。这些组件都是Java开发中...这些工具在企业级应用中尤其常见,因为它们能处理大量数据并提供高质量的输出格式。
JasperReport和iReport是Java平台下用于生成报表的...在实际应用中,它们能够有效地帮助开发者和最终用户从大量数据中提取出有价值的信息,以直观、美观的格式呈现,对于提升企业数据可视化和决策支持具有重要意义。
报表的分页查看功能是确保大量数据能够有序、高效显示的关键。SpringMVC通过控制页面的请求参数,结合JasperReport的报表生成能力,实现了分页效果。用户可以根据需要查看不同页码的数据,提高用户体验。 文件导出...
- **高性能**:POI提供了低级别的模型来处理文档的每一个细节,同时也提供了一种流式处理模式,减少内存消耗,适用于大数据量的处理。 2. **子文件详解**: - **poi-ooxml-schemas-3.7.jar**:包含了Open XML...
- **性能优化**:对于大数据量的报表,未优化的填充和导出过程可能导致内存溢出或长时间等待。可以通过分页、懒加载等策略来提高性能。 解决这些问题的关键在于理解和掌握JasperReport的工作原理,以及正确使用其...