`
hpjianhua
  • 浏览: 241638 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类

英文版:JasperReports报表工具[Reports made easy with JasperReports]

阅读更多
http://www.javaworld.com/javaworld/jw-09-2002/jw-0920-opensourceprofile.html

Generating reports is a common, if not always glamorous, task for programmers. In the past, report generation has largely been the domain of large commercial products such as Crystal Reports. Today, the open source JasperReports report generating library gives Java developers a viable alternative to commercial software.

JasperReports provides the necessary features to generate dynamic reports, including data retrieval using JDBC (Java Database Connectivity), as well as support for parameters, expressions, variables, and groups. JasperReports also includes advanced features, such as custom data sources, scriptlets, and subreports. All in all, JasperReports combines good features, maturity, community participation, and, best of all, it's free.

This article kicks off JavaWorld's new Open Source Profile column dedicated to Java-based open source tools and components. Look for upcoming articles spotlighting the Echo Web application framework and ObJectRelationalBridge, an object/relational mapping tool. Feel free to send me your suggestions for future articles.

Note: The documentation and code featured in this article are based on JasperReports version 0.3.3.

Report design
In JasperReports, you design reports using XML report templates. For example, the following XML file is a template for a report with a title, two columns of data, and page numbers:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jasperReport PUBLIC "-//JasperReports//DTD Report Design//EN" 
 "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport name="BasicReport" >
  <parameter name="Title" class="java.lang.String"/>
  <queryString><![CDATA[select name, cost from product]]></queryString>
  <field name="NAME" class="java.lang.String"/>
  <field name="COST" class="java.lang.Double"/>
  <title>
    <band height="50">
      <textField>
        <reportElement x="0" y="0" width="200" height="50" />       
        <textFieldExpression class="java.lang.String">$P{Title}</textFieldExpression>
      </textField>
    </band>
  </title>
  <pageHeader>
    <band>
    </band>
  </pageHeader>
  <columnHeader>
    <band height="20">
      <staticText>
        <reportElement x="180" y="0" width="180" height="20"/>
        <textElement>
          <font isUnderline="true"/>
        </textElement>
        <text><![CDATA[NAME]]></text>
      </staticText>
      <staticText>
        <reportElement x="360" y="0" width="180" height="20"/>
        <textElement>
          <font isUnderline="true"/>
        </textElement>
        <text><![CDATA[COST]]></text>
      </staticText>
    </band>
  </columnHeader>
  <detail>
    <band height="20">
      <textField>
        <reportElement x="180" y="0" width="180" height="20"/>                  
        <textFieldExpression class="java.lang.String"><![CDATA[$F{NAME}]]></textFieldExpression>
      </textField>
      <textField pattern="0.00">
        <reportElement x="360" y="0" width="180" height="20"/>                  
        <textFieldExpression class="java.lang.Double"><![CDATA[$F{COST}]]></textFieldExpression>
      </textField>
    </band>
  </detail>
  <columnFooter>
    <band>
    </band>
  </columnFooter>
  <pageFooter>
    <band height="15">
      <staticText>
        <reportElement x="0" y="0" width="40" height="15"/>
        <textElement/>
        <text><![CDATA[Page:]]></text>
      </staticText>
      <textField>
        <reportElement x="40" y="0" width="100" height="15"/>
        <textElement/>
        <textFieldExpression class="java.lang.Integer"><![CDATA[$V{PAGE_NUMBER}]]></textFieldExpression>
      </textField>
    </band>
  </pageFooter>
  <summary>
    <band>
    </band>
  </summary>
</jasperReport>




The template's beginning includes any parameters passed into the report, the query that retrieves the data for the report, and the fields displayed in the report. The template's remainder divides into six report sections:
分享到:
评论

相关推荐

    java源码:JasperReports 报表类库v3.5.rar

    IReport是JasperReports配套的报表设计工具,它是一个可视化的界面,允许开发者通过拖放操作创建报表。用户可以预览报表,调整样式,添加计算表达式,以及与各种数据源进行交互。 4. **报表组件** JasperReports...

    基于Java的JasperReports 报表类库v3.5.zip

    JasperReports是一款强大的开源报表工具,主要面向Java开发者,用于生成各种类型的静态和交互式报告。这个"基于Java的JasperReports报表类库v3.5.zip"文件包含的是JasperReports库的v3.5版本,这是一个历史悠久且...

    基于Java的源码-JasperReports 报表类库v3.5.zip

    1. **报表设计**:JasperReports支持使用JRXML格式定义报表模板,这是一种XML格式,允许开发者通过文本编辑器或者专门的报表设计工具(如iReport)来创建和编辑报表布局。JRXML文件包含了报表的结构、样式、数据源等...

    JasperReports 报表类库v3.5.7z

    JasperReports是一款强大的开源报表工具,它为Java开发者提供了丰富的报表设计和生成功能。这个"JasperReports报表类库v3.5.7z"压缩包包含的是JasperReports库的v3.5版本,这是一个专门用于创建、设计和展示复杂报表...

    基于Java的实例开发源码-JasperReports 报表类库v3.5.zip

    JasperReports是一款强大的开源报表工具,专为Java平台设计,用于生成复杂的报表和图表。它在Java应用程序中广泛使用,可以轻松地集成到各种应用框架中,如Spring、Struts等。这个压缩包"基于Java的实例开发源码-...

    jasperreports-server-playbook:JasperReports Server 的 Ansible 部署脚本

    JasperReports Server 是一个功能强大的商业智能(BI)和报告工具,它为企业提供了一种集中管理报表、仪表板和数据可视化的方式。这款开源软件支持多种数据源,包括关系型数据库、CSV 文件和其他 BI 平台,使得用户...

    Jasperreports5.6.0

    JasperReports 5.6.0 是一个强大的开源报表工具,专为生成各种类型的静态和交互式报告而设计。这个版本在2012年发布,是Java平台上的一个流行选择,尤其对于那些需要在应用程序中集成复杂报表功能的开发者来说。在...

    JasperReports 报表开发 java.rar

    JasperReports是一款强大的开源报表工具,它允许开发者创建复杂、美观的报表,并能与Java应用程序无缝集成。在Java开发环境中,JasperReports以其灵活性和易用性被广泛应用于数据分析和展示。本教程“JasperReports ...

    使用jasperreports制作报表(导出pdf excel html)

    2. iReport:这是一个基于JasperReports的报表设计工具,用于创建JRXML报表模板。 3. JasperReports Library:包含JasperReports的jar文件,这些文件将在你的项目中作为依赖使用。 ### 三、报表设计 1. **安装...

    jasperreports报表资料

    JasperReports是一款开源的Java报表工具,用于生成静态和交互式的报表。它能够处理各种数据源,如数据库、CSV文件、XML数据等,并且能够导出报表为多种格式,包括PDF、HTML、Excel、CSV等。jasperreports的核心优势...

    JasperReports for Java Developers

    《JasperReports for Java Developers》是一本专门为Java开发者编写的关于JasperReports的书籍,旨在帮助读者深入理解和熟练运用这个强大的报表工具。JasperReports是Java领域中最流行的开源报表库,它提供了丰富的...

    jasperreports-6.1.1_all_jar.rar资源包下载.zip

    总的来说,JasperReports 6.1.1版是一个全面的报表解决方案,它提供的强大功能和灵活性使得开发者能够创建出丰富多样的报表,满足企业级应用的需求。对于需要处理大量数据、展示复杂信息的Java项目,JasperReports...

    iReport-JasperReports报表开发指南+操作手册

    《iReport-JasperReports报表开发指南+操作手册》是一本专为初学者设计的教程,主要聚焦于使用iReport和JasperReports工具进行报表开发。这两个工具是Java领域内广泛使用的开源报表解决方案,尤其在企业级应用中颇受...

    JasperReports_downcc.zip

    1. 报表设计:JasperReports提供了基于Java的报表设计工具,用户可以通过拖放操作创建复杂的报表布局。报表设计文件通常以`.jrxml`格式存储,这是一种XML格式,方便编辑和版本控制。 2. 数据源支持:JasperReports...

    jaspersoft-studio-user-guide_8_jasperReports_报表设计器_

    JasperReports是一款强大的开源报表工具,其报表设计器——Jaspersoft Studio,是专为简化和优化报表创建而设计的集成开发环境(IDE)。这款强大的工具提供了丰富的功能,允许用户创建、编辑和管理各种类型的报表,...

    JasperReports 报表

    JasperReports是一款强大的开源报表工具,专为Java应用程序设计,用于生成复杂的报表和数据可视化。它的灵活性和可扩展性使其在企业级应用中广泛应用,能够处理大量的数据并以多种格式输出,如PDF、HTML、Excel、CSV...

    图示ireport中使用javabean作数据源开发基于jasperreports报表过程

    标题中的“图示ireport中使用javabean作数据源开发基于jasperreports报表过程”表明,这篇内容将介绍如何在ireport设计工具中利用JavaBean作为数据源来创建基于JasperReports的报表。JasperReports是一个开源的报告...

    JasperReports+ireports制作PDF报表.pdf

    JasperReports是一款开源的报表工具,由Jaspersoft开发,主要用于生成复杂的业务报告。它支持多种数据源,如JDBC、XML、CSV、JSON等,并能够将数据转化为多种格式的报表,包括PDF、HTML、XLS、XML、RTF等。...

Global site tag (gtag.js) - Google Analytics