ireport与jasperreport开发详解一1、简介:jasperreport是一个报表制作工具,用户须按照它编写的规则编写一个xml,然后得到用户所要的报表文件。 jasperreport程序库是一个灵活,功能强大的报表产生工具,可以以pdf, html或xml等多种形式产生报表, 并支持csv, xls,等格式报表。该引擎由java编写,支持多种形式应用程序产生动态报表。打印的报表文档,jasperreport是按照一个预定义的xml文档来组织报表的数据, 这些数据来源多样,包括关系数据库、java容器对象,后面我们将介绍,用户通过简单的接口来实现数据源与报表引擎的使用。首先我们所用到的ireport的版本是:ireport 0.4.1;jasperreport的版本是:jasperreports 0.6.5.目前ireport支持asperreports 0.6.0到0.6.4之间的版本包括0.6.0.和0.6.4版本身。 1.运行环境 jdk要求最低1.2.2 或更高版本。 2.jasperreport的工作方式(图片来源:http://ireport.sourceforge.net/cap3.html#3.1) 用户通过使用ireport设计好报表后,得到一个xml文件(以.jrxml结尾的),编译后生成jasper文件(以.jasper结尾),最终要使用的是编译后的*.jasper文件3.ireport3.1.1 将ireport0.4.1解压后在目录中会有一个名为:ireport.bat的批处理文件,双击运行它(如图:)。 3.1.2 ireport运行起来后的主界面如下图: 3.1.3 制作基于sql server数据库的一个报表(静态的报表制作在网上很多,在这里不作说明), 首先选中file菜单(如图), (图1)选取中new document创建一个新报表(也可以选report wizard报表向导来生成报表,现在暂不谈),也可以点击图标, 来新建报表。 3.1.4 真写报表属性 在report name真入报表名字,在page size区内选择你所要用的纸张及尺寸,我们在这里选择默认参数, 在网上很多资料介绍须要修改i18n选项卡中的xml encoding,改为gb2312,默认参数为 utf-8,并且ireport并没有提供该选项,此选项我们并没有去修改它仍然为utf-8,如果你认为有必要可以手动输入gb2312.然后点击ok.主界面变为:3.1.5 设置数据源,单击菜单datasource,选中connections/datasources出现如下对画框,单击new设置数据源单击new后,弹出对画框,设置连接属性(如图:),选择你的数据源(type of connection/ddatasource), 里面有javabean,xml,jdbc等数据源,我们选择jdbc数据源,数据源名字name,可以任意输入你喜欢的名字。在jdbc driver 下拉列表框中选择数据库连接驱动, 我们选择连接sql server类开的如图,连接jdbc的url,它会自动为你填上。在server address输入框中输入服务器地址。在database输入框中填写你要使用的 数据库名字.以及填上你登陆数据库的用户名username和密码password,然后点击密码输入框中边上的save password保存密码,接着点 击wizard将你的登陆信息更新到jdbc url中 ,现在我们应该作一个对数据库的连接测试,看看设置是否正确点击右下角的test, 如果测试成功后会弹出否则就会弹出连接错误对话框(如图) 这时你就要检查你的设置参数是否正确,以有数据库的安全登陆方式。未完待续 faq1.生成报表时中文产生乱码? jasperreport的中文处理,须要一个亚洲语言包 itextasian.jar,话到ireport下的lib目录中;然后修改报表的pdf font name将其改为stsong-light,再则是修改pdf embedded pdf encoding 将其改为unigb-ucs2-h(chinese simplified) ,这样就可以解决jasperreport的中文问题了(针对pdf设置的,对excel也许要少一些,不过这样设置同样也能显示为中文,是不爱引响的)。2.报表编译时产生noclassdeffoundexception异常?在代码处理jasperreport时出现该异常,是因为在引用jasperreport的一些jar文件不完整,因工作忙我的处理方式是将jasperreport目录下的demo ample/webapp/web-inf/lib/所有的jar文件,全引用了,以防不测,同时也没有时间去过多的深究。一定会有一些不必要的包被引用了,如果你有时间可以看一下,再将不必要的jar去掉。3.另存为pdf时出现unisupportencodingexception异常?在报表设计的过程中难免会有小错误,这是因为没有改变pdf font name应改为stsong-light.下载相关:ireport下载地址:http://ireport.sourceforge.netjasperreport下载地址:http://jasperreports.sourceforge.netitext亚洲语言包下载地址:http://www.lowagie.com/itext
收集最实用的网页特效代码!