Java开源报表JasperReport、iReport4.5.1使用详解(二)

上一节,我们介绍了JasperReport、iReport4.5.1这两款开源软件,本节来个例子,实战下。

一.数据源设计

   

图1-1

打开上图中红色部分所示:进行当前报表的数据源的设计,我们本节写的是Sql语句

   

 图1-2

选择OK 之后,此语句涉及的字段都会显示在Fields下面:

 

 

图1-3

二.报表的结构介绍

 

   

图1-4

报表的结构包括如下部分:Title、Page Header、Column Header、Detail、Column Footer、Page Footer、Summary.下面一一的介绍各个部分。

Title:为报表的标题部分,如果报表有多页,则只显示在第一页。

Page Header :为报表每页的一个头部名称,如果报表有多页,则每页都会显示。

Column Header:可以理解成表头,如果报表有多页,则每页都会显示。

Detail:详细记录,迭代列出所有的查询结果,有多少数据都会显示出来(分页)。

Column Footer:相当于表尾,如果报表有多页,则每页都会显示。

Page Footer:与Page Header对应,每页都会显示。

Summary:报表的一些统计信息。比如共有多少页,当前是第几页等信息。

三、接下来,我们试着制作一份报表出来。

改报表的要求是:列出所有用户的信息,(查询语句决定。)

我们从组件面板中,拖出一个 Static Text 组件来,放置在报表的Title部分,输入“用户账户清单”。

 

在Page Header 也同样拖入一个 Static Text 组件,输入“管理员”

展开左侧的 Report Inspector,展开Fields子项,将图1-3所示的字段,拖入Detail项中,此时会发现,Column Header项中自动填充了Static Text的表头,也可以对表头进行编辑,重命名等操作。可以调整各组件的位置、大小等信息。

如图所示:

 

图3-1

预览,选择Preview (图3-1红色框部分)即可。

结果如下图所示:

 

图4-1

生成的文档信息如下:

 
  
  1.   Compiling to file... G:\Jaspersoft\iReport-4.1.1\ireport\fonts\report1.jasper  
  2. Compilation running time: 297!   
  3.   Filling report...  
  4.   Locale: 中文 (中国)  
  5.   Time zone: Default  
  6. Report fill running time: 203! (pages generated: 2)   
  7.   Exporting PDF (using iText) to file... G:\Jaspersoft\iReport-4.1.1\ireport\fonts\report1.pdf!  
  8. Export running time: 94!   
  9. Executing: "E:\Adobe\Reader 10.0\Reader\AcroRd32.exe" "G:\Jaspersoft\iReport-4.1.1\ireport\fonts\report1.pdf" 

与此同时,会自动弹出一个report1.pdf的文档,注意,这里可能有些同学会出现中文显示不了的情况,这里需强调一下的是,要想显示中文,需要需要进行一些配置

在iReport的classpath里面导入包含了中文的字符的jar文件,还有供Pdf使用的字符jar包。
 

工具-->选项-->font

如果没有,则需加入到classpath中

 图4-1-1

也可以添加自己所需要的字体。

iTextAsian.jar的最新的jar包可以到下面的地址下载。

 http://sourceforge.net/projects/itext/files/extrajars/

包含在 extrajars-2.2.zip 中

 图4-1-2

文本框默认的是:SansSerif字体,需要改成我们中文的字体

 

 

图4-1-3

关于字体的安装,后面的部分会介绍到。