Jasperreport基本介绍(Jasperreport与Ireport介绍)
jasperreport基本介绍
jasperreport与ireport介绍
jasperreport是报表打印工具,支持pdf、csv多种格式的报表打印。
jasperreport是一个开源的工具包,将jasperreport包加入到项目的classpath中即可开始使用jasperreport包了,从java程序中通过调用包中的类对jrxml文件进行操作,可以完成报表的编译、显示、输出等工作;
jasperreport的报表生成过程,如下图。
如上图所示。报表模板有两种制作方式:
1)利用ireport图形编辑工具,ireport是报表编辑图形工具,编辑完成后输出jrxml文件(xml格式), 生成jasper文件(以.jasper结尾);
2)直接利用java代码编译生成jasper文件(以.jasper结尾)。
最终要使用的是编译后的*.jasper文件。
jasperreport支持多种数据源,包括xml、数据库、javabean等多种数据源。
jasperreport基本类
l net.sf.jasperreports.engine.jaspercompilemanager类。
使用这个类的几个静态方法即可完成对报表的编译工作(具体参见api文档)
编译完成后可以jaspercompilemanager有两种处理方式:
1> 返回一个jasperreport对象
2> 在.jrxml文件所在的目录生成一个.jasper文件
这两种方式是由程序员自己选择的。不过我比较倾向使用.jasper文件,毕竟报表的结构不是每天都在改动,所以每次重新编译报表并不是很划算。
l net.sf.jasperreports.engine.jasperfillmanager类
这个类的作用是用数据填充报表。它可以使用jasperreport对象也可以使用。jasper文件做为报表模板。
它同样有2中处理方式:
1> 返回一个jsaperprint对象。
2> 在.jasper文件所在目录生成一个.jrprint文件
这个类使用net.sf.jasperreports.engine.jrdatasource接口的实现做为数据源。任何实现了jrdatasource的类均可做为数据源使用
在net.sf.jasperreports.engine.data包中定义了一些数据源,可根据自己的需要选择。这里我使用的是jrtablemodeldatasource做为
l 3. net.sf.jasperreports.engine.jasperprintmanager和
net.sf.jasperreports.engine.jasperexportmanager这两个类的作用是打印、导出报表他们使用 jasperprint 和 .jrprint文件做为输入。
jasperreport实例演示
少说废话,下面我们就进行一些基本的演示。在下才疏学浅,在调查中只做了三种尝试:1)利用ireport进行模板设计,数据源采用xml文件;
2)利用ireport设计模板,导入jfreechat对象;
3)使用java代码设计模板,数据源为对象数组。
下面我们逐一进行讲解。ok,let’s go!!!!
ireport设计模板,xml数据源
1) 安装ireport。
直接点击windows版本ireport安装文件,安装文件中已经包含了jasperreport组件,这里不做表述,有问题问百度!
2) 打开ireport
ireport 3.7.4用户界面如图所示。
客官您瞧见,用户界面上的“quick start”没?按照图中表示的1、2、3去做,就基本能搞清楚ireport是什么道道!
3) 添加数据源
点击标号①,界面如下:
哇塞,这么多数据源,看来真的是很好很强大耶。我们选择“xml file datasource”,点击next,
按照上图填入数据源名称、以及数据源xml文件,注意一定要选择“use the report xpath expression when filling the report”.点击“save” 即可,在下图标记处会出现相应的生成结果。
现在让我们先查看一下,刚刚添加xml数据源的具体结构:
数据源准备好了,可以开始模板创建了。
4) 创建模板
在上图中点击“②”,出现下图。
点击“launch report wizard”,如下图:
输入报表名以及保存路径,点击“下一步”
在“connections/data sources”中选择你需要的数据源。接下来就直接点击“下一步”,直到完成。
点击完成后,进入模板元素设计页面。
图中,左边标记为页面监视器(report inspector),右边为组件工具栏。若客官您在使用的过程中,不小心关闭了这些窗口,您可以在菜单栏“窗口”中找到,点击之后,该窗口就会出现了。
5) 添加元素
在组件工具栏中选择组件,直接拖拽到模板中。
点击图中红色标记,进入如下图:
将图中标记的“customers”拖拽到下方的标记处,此处的作用就是要将数据源中的数据字段添加要ireport中,以便下一步为刚刚建立的“field”元素指定,查询语句。如下图。
点击ok即可。
再右击field元素,点击“edit expression”,如图:
将field括号内的改成您需要的字段如“companyname”。点击“apply”
做到这一步,您可能觉得“应该该做了都做完了,可以进行预览了!”,其实我也这么想的,也这么做的,可是,预览报错,经过研究,我还是少做了一步,而这一步至关重要,就是我们没有选择xml文件中的数据list节点。
您必须要按照如上图所做,输入query语句。
好了,这下我们就可以预览了。
6) 预览报表
点击“preview”按钮就成,让我们看看效果吧:
呵呵,丑是丑了点,但是这是我们头一回用ireport,还是很有成就感的。