JasperReport 与iReport 的配置与使用
1.JasperReport 与iReport 简介
1.1 JasperReport 简介
JasperReport 是一款报表打印组件,是开放源代码组织sf.net 中的一个java 报表打印工程,在我写这篇文章时,JasperReport 的最新版本是0.5.2 版,JasperReport 的最新版本可以从http://jasperreports.sourceforge.net/index.html 下载得到。JasperReport 适合用来做WEB 应用程序与Java Application 的报表打印组件,而且关键的一点是:JasperReport 是免费的!
1.2 iReport 简介
iReport 也是开源组织sf.net 中的一款免费软件,其主要作用是用来以可视化的方式设计生成JasperReport 所使用的报表格式文件,因为JasperReport 本身并未提供很好的可视化报表设计工具,iReport 的出现正好弥补了这个缺陷。本文写作时的iReport的最新版本是0.3.0,iReport可以从http://ireport.sourceforge.net 下载得到,注意下载的iReport 一定要与你所使用的JasperReport 版本相匹配,当然您也可以更新iReport 中所使用的JasperReport 组件,后面的文章中会有详细的介绍。
2.安装与配置
2.1 JDK 的安装与配置
2.1.1 JDK 的下载与版本选择
JDK的最新版本可以从SUN的官方网站http://java.sun.com上下载得到, JDK共分为3 个版本,J2ME,J2SE,J2EE,因为是在计算机上使用,我们需要下载使用 J2SE SDK,如果您的计算机是用来做软件开发,需要下载J2SE SDK,如果是用来运行已经编译好的JAVA 程序的,可以只下载J2SE JRE 即可。
下载JDK 时SUN 公司会要求你同意一个JDK 的使用许可协议,选接受协议后,会出现选择适合不同的操作系统平台使用的JDK 版本选择的界面,您可以根据自己使用的操作系统平台选择适合的JDK 版本。
2.1.2 JDK 的安装
以Windows 平台的安装为例,在安装的过程中一路Next 即可,同时请注意记录下JDK安装后的目录,稍后进行配置时要用到。
2.1.3 JDK 的配置
以在Windows 2000 平台配置J2SE SDK 为例(注意不是J2SE JRE),鼠标右键点击桌面上的“我的电脑”图标,在弹出的菜单中选择属性,选择“高级”选项,选择“环境变量”,点击“系统变量”下的新增按钮,在对话框中的变量名处输入大写的JAVA_HOME,在变量值处输入2.1.2 中所记录的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 的方式来应用。
2.2.1 ant 的下载与安装
ant 是apache 组织的一个子项目,可以从http://ant.apache.org 下载得到,Windows 平台的可以下载ZIP 格式的安装文件,下载完成以后解压缩到某个目录,建议使用根目录下的直接子目录作为ant 解压缩以后目录,ant 无需安装,解压缩
文件以后就算安装完成。
2.2.2 ant 的配置
与2.1.3 小节中设置JDK相同的操作过程打开系统环境变量设置窗口,增加ANT_HOME环境变量,变量值为解压缩以后的ant 所在目录,目录名中同样不要带有“\\”。
在系统的环境变量Path 中增加%ANT_HOME%\\bin 目录,然后新开一个命令行窗口,输入ant 后如果出现如下图所示内容即算正确完成ant 的配置。
2.3 JasperReport 的安装与配置 2.3.1 JasperReport 的安装
因为JasperReport 是sf.net 的开源项目,最新的JasperReport 版本可以在sf.net 中找到,同时,为了方便世界各国程序员下载,sf.net 还设有许多的镜像站点供你选择,推荐大家选择设在日本鬼子小岛上的Asia 服务器下载。
强烈建议下载jasperreport 的source.zip,因为这里面包含了很多的示例程序,对于想深入研究jasperreport 的人来说会有很大的帮助。如果不想对JasperReport 有太多的深入了解,只需要下载.jar 文件就能正常开发应用了。
没有必要单独为JasperReport.jar 文件设置目录, 建议放在您系统中的%JAVA_HOME%\\lib\\目录中。
2.3.2 JasperReport 的配置
将JasperReport-x.x.x.jar 文件添加到操作系统的环境变量ClASSPATH 中即可完成JasperReport 的配置。
2.4 iReport 的安装与配置
2.4.1 iReport 的安装
iReport 组件有时可能会发布一些小的bug fix 版本,里面所带有的文件不全,笔者在第一次学习iReport 的使用时就被郁闷了很长时间,后来才发现原来自己使用的iReport 运行不起来的原因是所用的版本只是个小的bug fix 集合,不过好在iReport 的网站会注明哪些版本需要哪些文件,大家到时候留心看一下就可以了,带有全部文件的压缩包应该在8M 以上。
iReport 在Windows 平台也是以.zip 形式的文件提供的,直接解压缩后就算完成了安装,如果您下载了一个老的带有全部文件的iReport 版本,又发现了bug fix 集合,直接将修补版覆盖老版本即可完成升级(注意不能删除老版本的文件,只能覆盖)。
JasperReport 在生成PDF 格式报表时使用了iText 组件,因为iText 在我们的中文环境下应用时需要用到一个iTextAsia.jar,我们还需要下载一个iText 处理中文字体时时用到的iTextAsia.jar,下载网址:http://itextpdf.sourceforge.net,下载以后将iTextAsia.jar 放到iReport的lib 目录中。
2.4.2 iReport 的配置
只针对2.x 版:如果您决定以ant 的方式运行iReport 程序,需要修改一下iReport 目录中的ireport.bat 文件中的内容,第一次运行ireport.bat 会生成javadoc,在确定已正确生成javadoc 文件后可以将生成doc 的那一段注释掉以便以后可以快速的启动iReport 程序。
3.0 版无需修改ireport.bat 文件。
3.iReport 的使用
3.1 启动iReport 的两种方式
3.1.1 在有ant 环境的下运行iReport
直接运行iReport 目录中的ireport.bat 即可。 3.1.2 在没有ant 的环境下运行iReport
2.X 版本使用iReport 目录中的noant 目录中的startup.bat 运行,3.0 版本使用bin 目录中的startup.bat 运行。
3.2 iReport 设计环境中的乱码现象的解决
不知道是出于让报表设计器的界面更美观还是别的什么原因,iReport 使用了一个tinylaf.jar,但是正是由于这个文件,在一些是否保存文件等对话框中的中文变的一塌糊涂,解决办法就是将iReport\\lib 目录中的tinylaf.jar 删除或改成后缀不是.jar 的文件,当然这样做的代价就是报表设计器的界面不再那么漂亮了,但对你最终交给用户使用的系统没有影响,因为iReport 只是个在搞系统开发时才用的着的报表设计器。
3.3 如何设计一个最简单的报表 选择File 菜单,选择New document
在弹出的Report property 对话框中输入报表文件的名称,设置报表的页面大小及边距等,编码格式保持UTF-8 不动。
选择工具栏中的Static text tool,在报表设计器的Detail 中用鼠标拖拽到适合的大小,如下图:
拖拽以后:
如果拖拽后的组件在允许打印的区域内,则显示蓝框,如果拖拽到其他的bands,则显示红框,红框代表不能打印,出现红框的错误情况如下图所示: