📜  JasperReports-入门

📅  最后修改于: 2020-11-16 07:44:56             🧑  作者: Mango


什么是报告

报告是有意义的,定义明确的摘要信息。通常,例行活动是自动化的,数据汇总为决策支持的“报告”。报告将常用的混乱数据表示为图表,图形和其他形式的图形表示形式。

报告模板

通常,大多数商业报告生成工具都采用以下布局来生成报告。

TITLE
PAGEHEADER
COLUMNHEADER
DETAIL
COLUMNFOOTER
PAGEFOOTER
SUMMARY

以下是图中提到的每个元素的描述-

S.NO Element and Description
1

title

Title contains the ‘Title’ of the report. It appears only once at the very beginning of the report, for example, “Tutorials Point Report.”

2

pageHeader

PageHeader may contain date and time information and/or organization name. This appears at the top of each page.

3

columnHeader

ColumnHeader lists the names of those specific fields, which you want to display in the report, for example, “Author Name,” “Starting Hour,” “Finishing Hour,” “Hours Worked,” “Date,” etc.

4

detail

Detail is the part where entries of the specific fields (listed in columnHeader) are shown, for example “Manisha”, “9:00”, “18:00”, “9”, “10.02.2013.”

5

columnFooter

ColumnFooter may display summation of any of the field, for example, “Total Hours Worked: “180.”

6

pageFooter

PageFooter may contain page count information. It appears at the bottom of each page, for example, “1/23.”

7

summary

Summary contains information inferred from “detail” part, for example, after listing the number of hours, worked by each author, total hours worked by each author can be put in visual chart like pie chart, graph, etc. for better comparison.

JasperReports

以下是报表开发过程中面临的常见问题-

  • 核心更改-通常,反映更改报告的核心逻辑所需的业务更改或增强。

  • 结果导出-您可以将报告导出为多种格式,例如:HTML,文本,PDF,MS Excel,RTF,ODT,逗号分隔值,XML或图像。

  • 复杂的报告-子报告和交叉表报告就是一个很好的例子。

  • 图表报告-可视图表,例如,Graph,Pie,XY线,Bar,Meter和Time系列。

为了消除上述几点的开销并简化报告过程,引入了许多框架,工具,库和第三方应用程序。 JasperReports是其中之一。

JasperReports是一个开放源代码Java报告引擎。它是基于Java的,没有自己的表达式语法。 JasperReports能够将丰富的内容交付到屏幕,打印机或PDF,HTML,XLS,RTF,ODT,CSV,TXT和XML文件中。由于它不是独立工具,因此无法单独安装。而是通过将其库包含在应用程序的CLASSPATH中将其嵌入到Java应用程序中。

JasperReports是一个Java类库,并不面向最终用户,而是针对需要向其应用程序中添加报告功能的Java开发人员。

JasperReports的功能

JasperReports的一些重要功能是-

  • 它具有灵活的报表布局。

  • 它可以文本或图形方式显示数据。

  • 开发人员可以通过多种方式提供数据。

  • 它可以接受来自多个数据源的数据。

  • 它可以生成水印(水印就像放置在主图像上的辅助图像一样)。

  • 它可以生成子报告。

  • 它能够以多种格式导出报告。