开发报表使用ireport开发还是比较快和方便的,以下整理jsp将jasper文件生成html,word,excel,pdf格式的代码:
ireport的使用教程可以参见一下附件:
1、生成html格式:
//输出html格式
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
Connection con = null;
try {
con=Conmysql.getCon();
//返回生成文件路径
String file=JasperRunManager.runReportToHtmlFile(application.getRealPath ("reports/test.jasper"), parameters, con);
response.sendRedirect("reports/test.html");
}
catch (Exception e) {
System.out.println(e);
}finally{
con.close();
}
2、生成PDF格式文件
//生成pdf格式
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
Connection con = null;
try {
con=Conmysql.getCon();
System.out.println("连接数据库成功");
byte[] bytes = JasperRunManager.runReportToPdf(application.getRealPath("reports/test.jasper"), parameters, con);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
}
catch (Exception e) {
System.out.println(e);
}finally{
con.close();
}
3、生成excel格式的文件
//生成excel格式
Connection con=null;
con=Conmysql.getCon();
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
try{
JasperPrint jasperPrint = JasperFillManager.fillReport(application.getRealPath("reports/test.jasper"),parameters,con);
ByteArrayOutputStream oStream = new ByteArrayOutputStream();
JRXlsExporter exporter = new JRXlsExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, oStream);
exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS,Boolean.TRUE); // 删除记录最下面的空行
exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET,Boolean.FALSE);// 删除多余的ColumnHeader
exporter.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND,Boolean.FALSE);// 显示边框
exporter.exportReport();
byte[] bytes = oStream.toByteArray();
if(bytes != null && bytes.length > 0) {
response.reset();
response.setContentType("application/vnd.ms-excel");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes,0,bytes.length);
ouputStream.flush();
ouputStream.close();
}else{
out.print("bytes were null!");
}
}catch(JRException ex){
out.print("Jasper Output Error:"+ex.getMessage());
}finally{
con.close();
}
4、生成word格式的文件:
//生成word格式
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
Connection con = null;
try {
con=Conmysql.getCon();
System.out.println("连接数据库成功");
JasperPrint jasperPrint = JasperFillManager.fillReport(application.getRealPath("reports/test.jasper"),parameters,con);
ByteArrayOutputStream oStrEeam = new ByteArrayOutputStream();
JRExporter exporter = new JRRtfExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, oStrEeam);
exporter.exportReport();
byte[] bytes = oStrEeam.toByteArray();
if(bytes != null && bytes.length > 0) {
response.reset();
response.setContentType("application/ms_word");
response.setHeader("Content-disposition", "attachment; filename=zhiyou_erp.doc");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
}
}
catch (Exception e) {
System.out.println(e);
}finally{
con.close();
}
分享到:
相关推荐
### Java调用iReport生成Word报告 #### 一、前言 本文档旨在详细介绍如何使用Java语言调用iReport工具来生成Word报告的过程。主要内容包括环境搭建、数据库配置、报表设计以及Java代码实现等方面。 #### 二、环境...
总的来说,"jasper+ireport+jfreechart导出html.excel.word.pdf"这个主题涵盖了报表设计、数据绑定、图表生成以及多种格式导出的关键技术。通过学习和应用这些工具,开发者可以构建出高效、直观的数据呈现系统,满足...
JasperReports是一款开源Java库,它允许开发者创建、设计和导出各种类型的报告,包括PDF、HTML、Excel和Word等格式。 描述中的链接指向了一篇博客文章,尽管没有提供具体的内容,但我们可以根据标题推测,博主可能...
《iReport与JasperReports:打造多样化报表生成方案》 在信息技术领域,数据的呈现方式至关重要,报表作为数据可视化的重要工具,能够帮助我们快速理解复杂的信息。本文将深入探讨iReport与JasperReports这两个强大...
iReport生成pdf打印的实例代码 iReport是一款功能强大且广泛应用的报表工具,它允许开发者快速生成各种格式的报表,例如PDF、Excel、Word等。在本篇实例代码中,我们将学习如何使用iReport生成PDF打印的实例代码。 ...
iReport生成的是.jrxml文件,这个文件描述了报表的布局,而填充数据则使用JasperReports。 3. 数据源的配置:在Java中配置报表数据源是生成报表的一个重要步骤。可以使用多种数据源,如数据库、Java对象的集合等。...
4. **灵活的输出格式**:除了PDF外,还支持HTML、Excel、Word等多种输出格式。 5. **易于集成**:可以轻松地与Java应用程序集成,实现动态生成报表的功能。 #### 三、iReport简介 iReport是一款基于JasperReports...
JasperReports支持多种输出格式,包括PDF、HTML、Excel、CSV等。`jasper-compiler.jar`是JasperReports的编译器部分,它负责将JRXML报表定义转换为Java类,以便在运行时动态执行。 `itext-rtf-2.1.7.jar`是iText的...
根据提供的信息,我们可以深入探讨如何使用iReport工具及其Java API来导出Excel文件,并进一步讨论相关的其他导出功能,如PDF、HTML和Word文档的生成。 ### iReport简介 iReport是一款开源报表设计工具,主要用来...
对于Word文档,虽然Ireport不直接支持,但可以通过先导出为PDF,然后借助其他工具转换为Word格式。 依赖库的列表如下: 1. **jasperreports-3.7.4.jar**:这是JasperReports库的核心,包含了报表设计、编译和渲染...
8. **导出格式**:设计好的报表可以导出为PDF、HTML、Excel、CSV等多种格式,满足不同的使用场景。 9. **国际化**:iReport支持多语言,可以通过资源文件实现报表的国际化,方便不同语言环境的用户使用。 10. **...
JasperReports是开源软件,广泛应用于数据可视化和商业智能领域,它能够帮助开发者轻松创建各种复杂的数据报表,包括PDF、Excel(XLS)、Word(doc)等多种格式的输出。 首先,我们要理解JasperReports的核心概念。...
4. **报表渲染**:JAR包包含了多种输出格式的支持,如PDF、HTML、Excel、CSV等,使得报表可以适应不同的应用场景。 5. **图表生成**:通过JFreeChart库,IReport能够生成各种类型的统计图表,如柱状图、饼图、线图...
通常,报表的生成会涉及到JasperReport库,使用`JasperFillManager.fillReport()`方法填充报表,然后通过`JasperExportManager.exportReportToXXX()`方法导出为PDF、Excel或Word格式。 4. **页面显示**:在Struts的...
* 使用ireport生成的jasper文件,将其放在webRoot下的report目录下的jasper目录里。 * 编写调用web文件,使用JasperRunManager、JasperPrint、JasperFillManager等类来生成报表。 四、jasperreport的引擎和 ...
在这个“jasper-reports-example”项目中,我们将探讨如何利用 JasperReports 来生成包含俄文字体的 PDF 报告,以及 Word(docx)和 Excel(xlsx)格式的报告。 1. **PDF 报告与俄文字体**: 在生成 PDF 报告时,...
此外,JasperReport支持导出报表到多种格式,如PDF、Excel、Word和HTML,极大地提高了报表的可用性和灵活性。 iReport是为JasperReport提供图形化报表设计环境的一个工具,它简化了报表的创建过程。开发者使用...
2. **JasperReports+ireports.pdf**:这是一个关于JasperReports和iReport的用户手册或教程文档。iReport是jasper报表的一个设计工具,通过阅读这个PDF文档,用户可以了解如何使用iReport来创建和编辑报表模板,以及...
这个"最新POI.jar"文件集包含了POI库的不同组件,版本更新至4.0以上,能够支持ireport生成Excel报表。下面将详细阐述POI的主要功能和这些子文件的作用。 1. **POI的主要功能**: - **读写Excel文件**:POI允许...