目标
通过本章教程,将能够了解如下信息
使用iReport新建一个报表
JasperReports 中的各区域的说明
JasperReports 中Fields的用法
将SQL选择的数据,填入报表中
准备支持
本章教程假设您已经了解如下知识
JasperReports 与 iReport
JBoss 与 JSP 基础
SQL 基础
使用如下脚本建立范例数据库TestDatabase.sql
新建报表
在iReport中选择 File -> New
在 New File 对话框选择 Report -> Blank A4,然后点击 Open this Template,新建一个名为sample2的报表。
JasperReports 区域说明
一个标准的JasperReport 分为如下区域
Title - 标题 报表的标题,只在开始显示
Page Header - 页眉 每页都会重复显示
Column Header - 列头 可以用于显示列头的地方
Detail - 细节 重复显示记录的地方
Column Footer - 列脚 可以做一些列统计
Page Footer - 页脚 每页都会重复显示
Summary - 统计 在报表的最后出现
输入报表标题
在 组件面板 中拖拽 Static Text 组件到 Title 区域,然后调整文本框到合适的位置。在文本框的属性表的 Text 属性中输入“这是一个简单的报表例子”。并调整为水平、垂直居中。
组件面板和属性面板
组件面板可以使用如下方法调出
窗口->组件面板
Ctrl+Shift+8
属性面板可以使用如下方法调出
窗口->属性
Ctrl+Shift+7
设定页眉为打印时间
在 组件面板 中拖拽 Static Text 组件到 Page Header 区域,然后调整文本框到合适的位置。在文本框的属性表的 Text 属性中输入“打印日期”。并调整为水平、垂直居中。
在 组件面板 中拖拽 Text Field 组件到 Page Header 区域,然后调整文本框到合适的位置。在文本框的属性表的 Text Field Expression 属性中输入$P{REPORT_PRINT_DATE}。
在Report Inspector面板中,右键点击Parameters,选择Add Parameter。在 Name 属性中输入REPORT_PRINT_DATE, Parameter Class 属性选择 java.lang.String
外部变量
$P{XXX}可以让报表使用外部变量。但是不要忘记要在Parameters列表中加入此外部变量,并设定类型
设定列头
在此列中,我们使用了一个订单表的例子。我们需要展示如下信息
订单号(ORDERID)
下单日期(ORDERDATE)
船名(SHIPNAME)
运送城市(SHIPCITY)
运送国家(SHIPCOUNTRY)
重量(FREIGHT)
其中下单日期和重量需要按特殊格式显示
在 组件面板 中拖拽 6个*Text Field* 组件到 Column Header 区域,然后调整文本框到合适的位置。如下是此六个 *Text Field*具体属性
Text Field ExpressionExpression Class$P{COLUMN_ORDERID}java.lang.String$P{COLUMN_ORDERIDATE}java.lang.String$P{COLUMN_SHIPNAME}java.lang.String$P{COLUMN_SHIPCITY}java.lang.String$P{COLUMN_SHIPCOUNTRY}java.lang.String$P{COLUMN_FREIGHT}java.lang.String
同时不要忘了在Parameters列表中添加相应的字段
在这里不使用静态文本,主要是为多语言考虑。如果这里使用静态文本,列头就无法变换了。
设定列表内容
列表内容一般是重复信息。重复信息,我们放在Detail区域内。
在 组件面板 中拖拽 6个*Text Field* 组件到 Detail 区域,然后调整文本框到合适的位置。如下是此六个 *Text Field*具体属性
Text Field ExpressionExpression ClassPattern$F{ORDERID}java.lang.Integer$F{ORDERIDATE}java.util.Dateyyyy/dd/mm$F{SHIPNAME}java.lang.String$F{SHIPCITY}java.lang.String$F{SHIPCOUNTRY}java.lang.String$F{FREIGHT}java.math.BigDecima#,##0.00;-#,##0.00
同时不要忘了在Fields列表中添加相应的字段
$P带头表示是变量,需要在Paramters列表中定义
$F带头表示是字段,需要在Fields列表中定义
设定页脚内容
同样,在 Page Footer 区域放置2个 Text Filed 组件。
在此,我们可以使用内部变量 $V{PAGE_NUMBER} 和 $V{PAGE_COUNT} 来制作 “第 X 页,共 Y 页”的效果
Text Field ExpressionExpression ClassPattern"第 " + $V{PAGE_NUMBER} + " 页,共 "java.lang.String" " + $V{PAGE_COUNT} + " 页"java.lang.String
最后设计完的报表如下图
测试报表添加数据源
在添加数据源前,先确保数据库已经启动
我们使用jtds来接连Microsoft SQL Server数据库,请确保在iReport的classpath中加入了jtds.jar
在工具栏上,点击 Report Datasource 按钮,弹出 Connections / Datasources 对话框,点击 New 按钮,选择 Database JDBC connection
在 JDBC Driver 中选择 MS SQLServer (net.sourceforge.jtds.jdbc.Driver),其他根据实际情况填写
如果iReport不会自动搜索lib目录,可以使用如下方法,在classpath中加入jtds.jar
工具 -> 选项 选择 iReport 标签页,点击 classpath 标签卡
点击 Add JAR 按钮后,选择jtds.jar文件即可
输入查询SQL
选择Sample2 在属性面板中 Query Text*属性输入 "SELECT * FROM ORDERS" *The language of dateset query 选择 sql
查看结果
需要查看结果,点击Preview按钮即可。
可以在此下载样例报表文件Sample2.jrxml
分享到:
相关推荐
2. **创建报表项目**:在iReport中,你可以创建一个新的报表项目,设置报表的基本属性,如大小、页面方向等。报表设计通常以JRXML文件的形式保存。 3. **设计报表布局**:利用iReport提供的各种组件,如文本字段、...
下面是一个简单的示例代码,用于演示如何生成一个基于JDBC连接的简单报表。 ```java // 加载驱动 Class.forName("com.mysql.jdbc.Driver"); // 连接数据库 Connection conn = DriverManager.getConnection("jdbc:...
### JasperReports与iReport中文教程知识点总结 #### 1. JasperReport与iReport简介 - **JasperReport**: 开源的报表打印组件,适合于Web应用程序与Java Application的报表打印需求,可在sf.net获取,截至文章撰写...
iReport提供了一个可视化的报表设计环境,使得用户能够快速地创建出JasperReports报表。 #### 2. Getting started 在这一章节中,我们将了解iReport运行所需的环境,以及如何获取iReport的源码或安装文件,并在...
JasperReports是一个基于Java的报表库,它允许开发者在Java应用程序中创建、设计和展示丰富的报表。该工具支持多种数据源,包括数据库连接、CSV文件、XML数据等,并能导出报表为PDF、HTML、Excel等多种格式。 2. *...
**JasperReports** 是一个强大的开源报表工具,广泛用于生成静态和动态的业务报告。它支持多种数据源,包括数据库连接、CSV文件、XML数据等,并且能够将数据以多种格式输出,如PDF、HTML、Excel等。在这个压缩包中,...
1. **快速入门**: 指导如何设置环境,创建第一个报表。 2. **API参考**: 详述JasperReports的类库和方法,便于查阅和编程。 3. **教程与示例**: 提供逐步指导,解释如何实现特定功能。 4. **常见问题解答**: 解答...
总的来说,"spring-mvc-jasperReports"项目可能是一个演示或教程,教授如何利用Spring MVC的灵活性和JasperReports的强大报告功能来构建高效的企业级报表系统。这种集成使得开发人员能够轻松地处理复杂的报表需求,...
JasperReports是一个开源的Java报表库,它允许开发者生成静态和交互式的报表。它可以嵌入到Java应用程序、Web应用或者独立运行,提供PDF、HTML、Excel、CSV等多种格式的报表导出。 iReport作为JasperReports的可视...
2. **iReport**:是JasperReports的一个图形界面设计器,简化了JasperReports的设计过程,使得非技术用户也能轻松创建复杂的报表。 3. **JFreeChart**:是一个用Java编写的开源图表库,用于创建各种类型的图表,如...
通过学习和实践这个JasperReports教程,你将能够熟练地创建、填充和导出报表,同时理解如何将JasperReports集成到你的Java项目中,以实现高效的数据展示和分析。无论是新手还是经验丰富的开发者,这个教程都将成为你...
iReport+Jasperreports中文教程集合 ...在本向导中,我们将看到如何配置IReports,如何使用Jasperreports and the IReportCompiler class 创建,编译和预览一个简单的报表 。 網上找的基本上都是這些
JasperReports本身是一个强大的报表引擎,能够根据用户定义的设计规则生成各种格式的输出文件,如PDF、HTML、XML、XLS、CSV等。iReport为用户提供了一个直观的界面来设计这些报表模板,简化了复杂的设计过程。 ####...
- 2.8提供了一个简单的程序示例,帮助用户理解JasperReports的应用。 第三章:报表元素 - 3.1介绍了报表元素的基础属性设置。 - 3.2讲解了元素的插入、选择和定位方法,包括插入元素、选择元素和定位元素的具体操作...
在本教程中,我们将学习如何在一个简单的Spring MVC Web应用中集成Jasper报表工具。教程涵盖的技术点有:报表自定义数据源的使用;报表渲染、呈现的配置与实现;iReport报表设计器的使用(报表模板设计)等
### iReport终极指南5.0 #### iReport简介 iReport是一个可视化的报表设计工具,可以用来...iReport Ultimate Guide 5.0 是一个全面的教程,涵盖了从安装到高级报表设计的各个方面,是报表开发者不可或缺的参考资料。
此外,还需要创建一个简单的测试数据库,包含两个表:`Employee`和`Department`,它们分别存储员工信息和部门信息。 #### 三、基本报表开发 ##### 1. 创建第一个报表 - 首先,解压iReport安装包并运行iReport。 - ...