分享
 
 
 

IReport与JasperReport开发详解一

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

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.IReport

3.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", 如果测试成功后会弹出

否则就会弹出连接错误对话框(如图)

这时你就要检查你的设置参数是否正确,以有数据库的安全登陆方式。

未完待续

FAQ

1.生成报表时中文产生乱码?

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\sample\webapp\WEB-INF\lib\所有的jar文件,全引用了,以防不测,同时也没有时间去过多的深究。一定会有一些不必要的包被引用了,如果你有时间可以看一下,再将不必要的jar去掉。

3.另存为PDF时出现UnisupportEncodingException异常?

在报表设计的过程中难免会有小错误,这是因为没有改变"PDF Font Name"应改为"STSong-Light".

下载相关:

IReport下载地址:http://ireport.sourceforge.net

JasperReport下载地址:http://jasperreports.sourceforge.net

iText亚洲语言包下载地址:http://www.lowagie.com/iText

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有