//在jsp页面中
<%
//new 一个 ArrayList集合 把 要显示的JasperPrint 放进去
ArrayList jasperPrintList = new ArrayList();
JasperPrint jasperPrintArr = JasperFillManager.fillReport ("reportAva.jasper", new HashMap(), new AvaDataSource());
JasperPrint jasperPrintCpu = JasperFillManager.fillReport ("cpuIReport.jasper", new HashMap(), new CpuDatasource());
JasperPrint jasperPrintFan = JasperFillManager.fillReport ("FanReport.jasper", new HashMap(), new FanDatasource());
JasperPrint jasperPrintLinAva = JasperFillManager.fillReport ("LinAvaReport1.jasper", new HashMap(), new LinDatasource());
JasperPrint jasperPrintLinDis = JasperFillManager.fillReport ("LinDisReport.jasper", new HashMap(), new LinDisDatasource());
JasperPrint jasperPrintMemory = JasperFillManager.fillReport ("MemoryReport.jasper", new HashMap(), new MemoryDatasource());
JasperPrint jasperPrintPower = JasperFillManager.fillReport ("PowerReport.jasper", new HashMap(), new powerDatasource());
JasperPrint jasperPrintTpt = JasperFillManager.fillReport ("TptReport.jasper", new HashMap(), new TptDatasource());
JasperPrint jasperPrintVol = JasperFillManager.fillReport ("VolReport.jasper", new HashMap(), new VolDatasource());
JasperPrint jasperPrintTile = JasperFillManager.fillReport ("Title_report.jasper", new HashMap(), new VolDatasource());
jasperPrintList.add(jasperPrintTile);
jasperPrintList.add(jasperPrintArr);
jasperPrintList.add(jasperPrintCpu);
jasperPrintList.add(jasperPrintLinAva);
jasperPrintList.add(jasperPrintMemory);
jasperPrintList.add(jasperPrintLinDis);
jasperPrintList.add(jasperPrintFan);
jasperPrintList.add(jasperPrintVol);
jasperPrintList.add(jasperPrintPower);
jasperPrintList.add(jasperPrintTpt);
//报表编译之后生成的.jasper 文件的存放位置
//传递报表中用到的参数值
Map parameters = new HashMap();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
JRPdfExporter exporter = new JRPdfExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT_LIST,jasperPrintList);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos);
exporter.exportReport();
byte[] bytes= baos.toByteArray();//得到这个流
System.out.println("---------Jasper end-------------");
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
%>
<html>
<head>
</head>
<body>
</body>
</html>
转载于good_dou的专栏http://hi.csdn.net/link.php?url=http://blog.csdn.net%2Fgood_dou
分享到:
相关推荐
1. **创建报表模板**:在iReport中设计报表模板,包括多个不同的报表页面。每个页面可以独立设置样式、布局和数据源。 2. **整合SpringMVC和JasperReports**:在SpringMVC项目中引入JasperReports和iReport的相关...
子报表是报表设计中的一个重要概念,它用于在主报表中嵌入另一个报表,通常用于展示与主报表相关的详细信息。例如,如果主报表是月度销售报告,子报表可能是每个产品的详细销售数据。在IReport中,我们可以通过以下...
主子报表是一种报表布局,它在一个报表中展示多个层次的数据,通常包含一个主报告(parent report)和一个或多个子报告(child report)。主报告负责显示主要的数据和概述,而子报告则用于展示主报告中特定项的详细...
iReport提供了一个图形化的界面,让用户无需编写代码就能创建和编辑报表模板,支持多种数据格式,包括数据库查询结果、CSV、XML等。在iReport中,你可以设计包含表格、图表、文本等元素的报表,并通过JasperReport库...
然后,我们创建一个`JRBeanCollectionDataSource`对象,它是一个JasperReports的数据源,可以将Java集合中的对象绑定到报表中: ```java JRBeanCollectionDataSource jbcd = new JRBeanCollectionDataSource(list);...
1. **界面设计**:iReport提供了一个拖放式用户界面,允许用户直观地设计报表布局。这包括表格、图表、文本框、图像等元素,以及复杂的样式和表达式。 2. **模板支持**:用户可以创建多种模板,如PDF、HTML、Excel...
1. 用户界面:iReport的用户界面由多个部分组成,如设计区、预览区、属性视图、数据库连接管理等,这些区域帮助用户直观地设计和管理报表。 2. 设计报表:在设计区,你可以通过拖拽控件(如文本框、表格、图像等)...
1. **可视化设计**:iReport提供一个WYSIWYG(所见即所得)的设计环境,使得非程序员也能设计出专业级别的报表。 2. **预览功能**:设计过程中可以实时预览报表效果,方便调整设计。 3. **样式编辑**:支持自定义...
总之,Ireport处理PDF中文输出时,需要综合考虑编码、字体和渲染器等多个因素。通过理解这些知识点并结合提供的Demo和文档,开发者可以有效地解决中文报表的显示问题,实现真正意义上的国产化报表系统。
iReport作为JasperReports的可视化设计工具,提供了一个直观的用户界面,使得非程序员也能轻松创建报表模板。它的主要功能包括: 1. **报表设计**:通过拖放控件,如文本框、表格、图像等,可以快速设计报表布局。 ...
总的来说,这个ireport 3.0.0的入门视频教程是一个宝贵的资源,对于那些希望在Java环境中制作专业报表的开发者来说,它提供了一个直观的学习路径,通过实际操作演示,帮助学习者快速上手报表设计。
子报表:当一个报表无法容纳所有信息时,可使用子报表包含另一个报表。子报表有自己的数据源和设计,可以在主报表中嵌套显示。 三、交叉报表的制作 交叉报表,也称为透视表,是一种展示多维度数据的有效方式。在...
1. **创建主报表**:打开iReport,新建一个报表(one.jrxml),设计好主报表的基本框架,如页眉、主体和页脚等部分。主报表通常会包含一些全局信息,以及对子报表的引用。 2. **定义$P{SUBREPORT_DIR}参数**:在主...
接下来,我们来看iReport 5.6.0,这是一个基于JasperReports库的报表设计工具。JasperReports是一个开源的Java库,可以用于创建各种静态和交互式的报表。iReport则是它的可视化设计界面,提供了丰富的报表元素,如...
### jasperreport+ireport开发java报表入门级教程(完整版) #### 一、简介:什么是iReport? iReport系统是一种在线系统,用于报告工作场所安全与健康(WSHA)事件报告条例下的事故、危险事件及职业病。雇主、占用...
Struts2是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,它极大地简化了Java Web应用程序的开发工作。而iReport则是一款强大的报表设计工具,它可以与Java应用程序结合,用于创建动态的、交互式的PDF...
《JasperReport.pdf》可能是JasperReports的综合教程,涵盖了报表设计、数据处理、动态内容生成等多个方面。它可能会详细介绍JasperReports的各种高级特性,如脚本语言的支持、参数化报表、自定义函数和复杂的过滤...
它提供了一个用户友好的图形界面,使得非程序员也能轻松创建复杂的报表布局。本教程将深入介绍如何利用iReport来开发Java报表。 一、iReport简介 iReport是Jaspersoft公司推出的一款免费报表设计工具,它支持XML...
报表的制作在iReport中涉及到多个组成部分,包括Background、Title、PageHeader、ColumnHeader、Detail、PageFooter、LastPageFooter和Summary。其中,Background用于设置报表的背景,Title和Summary分别处理报表的...
IReport是JasperReport的官方报告设计器,提供了一个直观的GUI界面,让用户无需编写代码就能设计报表模板。用户可以通过拖拽控件、设置样式、添加数据源等方式创建报表。IReport支持XML语法的JRXML文件,这种文件...