Jasperreport和iReport详细功能介绍

  • 格式:doc
  • 大小:1.78 MB
  • 文档页数:51

JasperReport和IReport报表开发的功能介绍目录1 简介 (4)2 JasperReport和IReport的安装与配置 (4)2.1 JDK的下载、安装和配置 (4)2.2 ANT的下载、安装和配置 (5)2.3 Jasperreport的下载、安装和配置 (6)2.4 iReport的安装和配置 (7)3 主要功能和实现过程 (7)3.1 XML解析 (8)3.2编译报表设计 (8)3.3 Report Design 预览 (9)3.4报表填充 (10)3.5查看报表 (11)3.6打印报表 (11)3.7导出报表 (11)3.8对象的载入和保存 (11)4 iReport的使用指南 (12)4.1一个简单的报表 (12)4.2报表预览 (13)4.3使用数据库的数据生成报表 (15)5 报表设计 (18)5.1DTD Reference (18)5.2XML编码 (19)5.3报表属性 (19)6 报表数据 (21)6.1表达式 (21)6.2参数 (22)6.3数据源 (24)6.4查询报表 (25)6.5字段 (26)6.6变量 (28)7 Report Sections (31)7.1 Main Report Sections (31)7.2 数据分组 (36)8 脚本程序 (38)9 报表元素 (38)9.1文本元素 (40)9.2图像元素 (45)9.3超链接 (48)9.4元素组 (48)10 子报表 (49)10.1子报表参数 (50)10.2子报表数据源 (50)11高级JasperReports应用 (50)11.1 XML报表的导入和设计 (50)11.2实例化数据源接口 (50)11.3自定义查看器 (50)11.4导出新的格式 (51)1 简介Jasperreport是一款报表打印组件,是开放源代码组织中的一个java报表打印工程,是一款功能强大的报表生成工具。

它既可以将报表内容在显示器上输出,也可以通过打印机打印出来,同时它还支持使用PDF、HTML和XML等多种文件格式进行存储。

在不久的将来,诸如CSV、XLS、RTF等格式也将会被兼容。

iReport也是开源组织中的一款免费软件,其主要作用是用来以可视化的方式设计生成JasperReport所使用的报表格式文件,因为JasperReport本身并未提供很好的可视化报表设计工具,iReport的出现正好弥补了这个缺陷。

2 JasperReport和IReport的安装与配置2.1 JDK的下载、安装和配置下载JDK的最新版本可以从SUN 公的官方网站上下载得到,网址为 ,JDK共分为3 个版本,J2ME,J2SE,J2EE,因为是在计算机上使用,我们需要下载使用 J2SE SDK,如果您的计算机是用来做软件开发,需要下载J2SE SDK,如果是用来运行已经编译好的JAVA 程序的,可以只下载J2SE JRE 即可。

下载JDK 时SUN 公司会要求你同意一个JDK 的使用许可协议,选接受协议后,会出现选择适合不同的操作系统平台使用的JDK 版本选择的界面,您可以根据自己使用的操作系统平台选择适合的JDK 版本。

安装以Windows 平台的安装为例,在安装的过程中一路Next 即可,同时请注意记录下JDK 安装后的目录,稍后进行配置时要用到。

配置以在Windows xp平台配置J2SE SDK 为例,鼠标右键点击桌面上的“我的电脑”图标,在弹出的菜单中选择属性,选择“高级”选项,选择“环境变量”。

点击“系统变量”下的新增按钮,在对话框中的变量名处输入大写的JAVA_HOME,在变量值处输入的JDK 安装目录。

点击“确定”完成第一步的配置,接下来以同样的方法配置系统环境变量CLASSPATH,在CLASSPATH的变量值处输入%JAVA_HOME%\lib\tools.jar; %JAVA_HOME%\lib\dt.jar,当然,也可以直接输入绝对路径,但建议使用%JAVA_HOME%的方式。

再接下来还要修改系统环境变量PATH,增加%JAVA_HOME%\bin 目录。

至此JDK 的配置也完成.打开一个命令行窗口,键入set classpath 与set java_home 应该可以看到正确的配置信息,同时,输入javac -version 看系统能否找到JAVA 的编译器。

2.2 ANT的下载、安装和配置ant 是个很好用的工具,虽然对于JasperReport 和iReport 来说ant 并不是必须的,但还是建议以使用ant 的方式来应用。

ANT的下载和安装ant 是apache 组织的一个子项目,可以从 下载得到,Windows 平台的可以下载ZIP 格式的安装文件,下载完成以后解压缩到某个目录,建议使用根目录下的直接子目录作为ant 解压缩以后目录,ant 无需安装,解压缩文件以后就算安装完成。

Ant的配置与设置JDK相同的操作过程打开系统环境变量设置窗口,增加ANT_HOME环境变量,变量值为解压缩以后的ant 所在目录在系统的环境变量Path 中增加%ANT_HOME%\bin 目录新开一个命令行窗口,输入ant 后如果出现如下图所示内容即算正确完成ant 的配置。

2.3 Jasperreport的下载、安装和配置Jasperreport的下载和安装因为JasperReport 是 的开源项目,最新的JasperReport 版本可以在 中找到,同时,为了方便世界各国程序员下载, 还设有许多的镜像站点供你选择。

强烈建议下载jasperreport 的source.zip,因为这里面包含了很多的示例程序,对于想深入研究jasperreport 的人来说会有很大的帮助。

如果不想对JasperReport 有太多的深入了解,只需要下载.jar 文件就能正常开发应用了。

没有必要单独为JasperReport.jar 文件设置目录,建议放在系统中%JAVA_HOME%\lib\目录中。

Jasperreport的配置将JasperReport-x.x.x.jar 文件添加到操作系统的环境变量ClASSPATH 中即可完成JasperReport 的配置。

2.4 iReport的安装和配置iReport的安装iReport 在Windows 平台也是以.zip 形式的文件提供的,直接解压缩后就算完成了安装如果是2.x版的,且您决定以ant 的方式运行iReport 程序,需要修改一下iReport 目录中的ireport.bat 文件中的内容,第一次运行ireport.bat 会生成javadoc,在确定已正确生成javadoc 文件后可以将生成doc 的那一段注释掉以便以后可以快速的启动iReport 程序。

3.0 版无需修改ireport.bat 文件。

i Report 的使用在有ant 环境的下运行iReport,直接运行iReport 目录中的ireport.exe 即可。

在没有ant 的环境下运行iReport,2.X 版本使用iReport 目录中的noant 目录中的startup.bat 运行,3.0 版本使用bin 目录中的startup.bat 运行。

3 主要功能和实现过程现在我们将对XML报表设计进行分析,编译,装填数据,预览结果和导出到其他格式的过程。

Jasperreport的实例下面是Jasperreport工具,将XML报表转变成的各种类型报表的流程图:3.1 XML解析JasperReport使用SAX2.0 API对XML文件进行解析。

然而,这并不是必须的,用于可以在执行其自行决定使用哪一种XML解析器。

JasperReport使用org.xml.sax.helpers.XMLReaderFactory类的createXMLReader()来获得解析器实例。

在这种情况下,就像在SAX2.0文档中说的那样,在运行期,把Java 系统属性org.xml.sax.driver的值设定为SAX driver类的全限定名是必要的。

设置系统属性有两种方法:第一种方法是在你启动Java虚拟机的时候,在命令行窗口使用-D开关:java -Dorg.xml.sax.driver=org.apache.xerces.parsers.SAXParser MySAXApp sample.xml在JasperReport提供的所有例子中,都采用ANT构建工具来执行不同的任务。

我们通过使用内置的 task中的元素来提供这一系统属性;第二种设置系统属性的方法是使用ng.System.setProperty(String key, String value)System.setProperty(“org.xml.sax.driver”,“ org.apache.xerces.parsers.SAXParser”);Jsp/compile.jsp和web-inf/class/servlets/CompileServlet.java文件提供了这方面的例子。

3.2 编译报表设计为了生成一个报表,用户首先需要完成报表的设计,生成方法或采用直接编辑XML文件,或通过程序生成一个net.sf.jasper.engine.design.JasperDesign对象。

在此,主要采用编辑XML文件的方法,因为这种方法在目前是使用JasperReport类库的最好的方法。

XML报表设计是JasperReport用来生成报表的初级材料。

这是因为XML中的内容需要被编译并载入到JasperDesign对象中,这些对象将在报表引擎向其中填入数据之前,必须经过编译过程。

报表编译过程的主要目的是生成并装载含有所有报表表达式的类的字节码。

这个动态生成的类将会被用来在装填数据,并在给所有报表表达式求值的时候使用。

具体例子是,如果你用iReport生成一个报表名字叫SimpleSheetTest,它的XML设计文件名叫SimpleSheetTest.jrxml,同时和它在同一目录下iReport会自动生成一个文件名为SimpleSheetTest.java,里面主要是一些报表元素,如Field,Parameters,Variables的定义,以及一些求值表达式。

当然,像上面提到的,这个文件在你直接使用JasperReport API 的时候是看不到的,因为它是在执行期生成的一个Class。

要想看到它的办法是:在IDE (JBuilder,Eclipse)中单步执行程序,在报表打印的阶段,你将能跟踪到这个类,它的名字就是“你的报表名.java”,按上面的例子就是SimpleSheetTest.java,这和iReport 是一致的。