`
laies
  • 浏览: 240454 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JasperReports是一个开源的java报表制作引擎

    博客分类:
  • Java
阅读更多
JasperReports是一个开源的java报表制作引擎
http://jasperreports.sourceforge.net

iReport是JasperReports的一个GUI工具,用来生成JasperReports的jrxml文件。
http://ireport.sourceforge.net



首先使用iReport制作报表的模板(我自己起的名词):

    运行iReport,新建一个report。
    在Title band中输入报表的名称,好象使用pageheader band也可以,目前我还没有弄明白2者具体的差别。
    在column header band中放置一些static text,做为报表的列标题。
    在detal band中放入一些textfield,显示报表的详细数据。
    在summary band中放入类似于"合计"之类的textfield,这个band是显示在最后一行数据的下放。
    在LastPageFooter band中放入想在最后一页显示的信息,比如说"审阅人签名"之类的。

这样报表的框架就基本上搭好了,然后compile一下检查是否有错误,如果没有错误那么就可以在程序中使用这个报表模板了。

JasperReports介绍:
   
    使用JasperReports生成报表是非常简单的,仅仅使用net.sf.jasperreports.engine包中的几个类即可完成报表的生成、预览、打印、导出等各个功能。

1.  net.sf.jasperreports.engine.JasperCompileManager类。
    使用这个类的几个静态方法即可完成对报表的编译工作(具体参见api文档)
    编译完成后可以JasperCompileManager有两种处理方式:
       1> 返回一个JasperReport对象
       2> 在.jrxml文件所在的目录生成一个.jasper文件
    这两种方式是由程序员自己选择的。不过我比较倾向使用.jasper文件,毕竟报表的结构不是每天都在改动,所以每次重新编译报表并不是很划算。

2.  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做为
    数据源(因为我的报表还要显示在Table中)。

3. net.sf.jasperreports.engine.JasperPrintManager和net.sf.jasperreports.engine.JasperExportManager
   者两个类的作用是打印、导出报表
   他们使用 JasperPrint 和 .jrprint文件做为输入。
   可以根据自己的需要使用里面的方法。

例:
       import net.sf.jasperreports.engine.*;
       import net.sf.jasperreports.view.*;
       public class CompileReport {
          public static void main(String args[]) {
             try {
                //编译report.jrxml并在report.jrxml所在的目录中生成report.jasper文件
                JasperCompileManager.compileReportToFile("report.jrxml");
                //填充数据,这里使用的是JREmptyDataSource
                JasperFillManager.fillReportToFile("report.jasper", null, new JREmptyDataSource(50));
                //预览报表,false代表不是使用xml文件。
                JasperViewer view = new JasperViewer("reports.jrprint", false);
                view.pack();
                view.setVisible(true);
             }
             catch (Exception e) {
                e.printStackTrace()
             }
          }
       }
分享到:
评论
2 楼 fight_bird 2007-11-26  
deadcode 写道
Jasper Report在使用起来还是比较简单的,复杂的还是在报表设计上.

大规模用起来恰恰相反,要集成好绝非易事!比如子报表集成、Applet方式实现、统计功能,复杂报表光靠内嵌sql来简单实现是很低效和烦琐的。
1 楼 deadcode 2007-08-13  
Jasper Report在使用起来还是比较简单的,复杂的还是在报表设计上.

相关推荐

    开源报表打印组件JasperReports用法详解

    开源报表打印组件JasperReports用法详解,开源报表打印组件JasperReports用法详解,开源报表打印组件JasperReports用法详解

    jasperreports.jar

    JasperReports是一个用Java开发的开源的程序库, JasperReports.3.6书封面 JasperReports.3.6书封面[1] 使用户能够透过它,利用Java语言来开发具有报告功能的程序。JasperReports的模版采用XML格式,从JDBC数据库中...

    JAVA上百实例源码以及开源项目

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    Jasperreports-6.3.1报表设计开源工具Jar包

    报表设计开源工具,开源协议LGPL,语言java.

    JasperReports3.0.0 最新版本3

    JasperReports3.0.0 最新版本 JasperReports是一个基于Java的开源报表工具,它可以在Java环境下像其它IDE报表工具一样来制作报表。JasperReports支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前...

    JasperReport+iReport报表开发手册.zip

    JasperReports 是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换 成 PDF,HTML,或者 XML 格式。它有一个相关的开源工程--IReport,这是一个图形化的辅 助工具,主要用于数据报表设计。...

    JAVA上百实例源码以及开源项目源代码

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    jasperreports-5.6.0.jar

    Jasper报表是一个开源的Java报表引擎,是基于Java的,它没有自己的表达式语法。 由于JasperReports是一个Java类库,而不是针对最终用户,而是有针对那些需要报表功能添加到自己的应用程序的Java开发人员。

    jasperreports-3.0.0-project.part4

    JasperReports3.0.0 最新版本 JasperReports是一个基于Java的开源报表工具,它可以在Java环境下像其它IDE报表工具一样来制作报表。JasperReports支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前...

    JasperReports3.0.0

    JasperReports3.0.0 最新版本 JasperReports是一个基于Java的开源报表工具,它可以在Java环境下像其它IDE报表工具一样来制作报表。JasperReports支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前...

    jasperreports-3.0.0-project2

    JasperReports3.0.0 最新版本 JasperReports是一个基于Java的开源报表工具,它可以在Java环境下像其它IDE报表工具一样来制作报表。JasperReports支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前...

    jasperreports-2.0.2-applet

    JasperReports是一个非常流行的用Java写成的开源(LGPL)报表工具库

    java源码包---java 源码 大量 实例

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 3...

    jasper report 报表源码 里面有demo

    jasper report 报表源码 里面有demo 容我多说俩,jasperReports 是一个基于 Java 的开源报表工具,它可以在 Java 环境下像其它 IDE 报表工具一样来制作报表。JasperReports 支持 PDF、HTML、XLS、CSV 和 XML 文件输出...

    免费开源报表

    这份简介是为了让大家对开源报表JasperReport的相关产品具备一定了解,其中包含了对报表引擎JasperReports,报表设计工具iReport和图表工具JFreeChart的介绍.

    java源码包2

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 ...

    java源码包4

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 ...

    jasperreports6.0.0相关jar

    asperReports是一个非常强大,易用的开源报表引擎,它是用Java编写的。它可以通过各种各样的数据源来生成像素级的文档,这些文档都可以查看,打印以及导出(文档格式包括HTML、PDF、Excel、Word等等)

    java源码包3

     Tcp服务端与客户端的JAVA实例源代码,一个简单的Java TCP服务器端程序,别外还有一个客户端的程序,两者互相配合可以开发出超多的网络程序,这是最基础的部分。 递归遍历矩阵 1个目标文件,简单! 多人聊天室 ...

Global site tag (gtag.js) - Google Analytics