Ireport报表插件使用之一——参数使用(Ireport5.6.0版本)

简介: Ireport的使用简单介绍

1、新建report1.jrxml文件不在赘述

2、调出组件面板:注意如果没有服务面板可以在窗口-->服务面板,调出来

df268bb4be999e7a1f1f109c811bc1bde494c8ee

3、各种面板上的元素属性不在赘述

4、数据源配置—连接数据库(DB2)

ea8689e06381691ac0c5f5345232ad059cc6902c

在这里为什么值描述DB2呢?因为其他的数据库连接都很简单,唯独DB2有坑,上图红框里面的东西,不管irport怎么提示你,直接手动输入红框的内容,但是URL必须改为你自己的数据库连接。DB2驱动类型有4种Type1,Type2,Type3,Type4,其中的区别可以自己百度,有很多说明,这里要说明的是,ireport提示的是:com.ibm.db2.app.DB2Driver,但是我们不用管,只要手工输入com.ibm.db2.jcc.DB2Driver即可。否则会提示无法连接,还有各种莫名其妙的错误。网上说的什么必须安装客户端才能连接如此之类的,无需考虑(注意:仅限ireport)

5、数据源配置—JavaBean

1)在下图进行配置数据源,配置好了点击test测试一下是否成功

0bc534402e1fc63188131a587fe9ae217a68daee

2)根据配置的数据源读取属性与值


2ee443aaa6687906461b49d0467f55cd1c101f26

3)把table组件拖到面板后方式text

9ecc61e1d8d914ca56ffc0dd265e5032fbe783f8

说明:Filed是从JavaBean这个KpiMajorProdIndusAllBO导入的,paramer是自己新建的,自己命名,需要与外部Model对应

比如我在我的controller层新建一个返回方法,这里是为了说明在测试或者生成环境如何返回数据,如果我们平时开发代码完全可以使用JavaBean作为数据源忽略此处:代码片段为:

dc29b941a3d5caada9c39bcdcc2ec764441d0930

Model里面属性参数作为外部传递到ireport的,参数就是沟通外部与irport的桥梁;直接对应ireport里面的paramer节点下,自定义的参数

4)为了说明如何使用ireport的参数,需要新建工厂类:KpiMajorProdIndusAllBOFactory

public class KpiMajorProdIndusAllBOFactory {
// 生成实体对象的个数
private static final int RECORD_COUNT = 10;
/**
* 这个方法在iReport的DataResource配置时也会用到 必须是静态方法 static
*
* @return
*/
public static Collection<KpiMajorProdIndusAllBO> createBeanCollection() {
Collection<KpiMajorProdIndusAllBO> beanCollection = new ArrayList<KpiMajorProdIndusAllBO>();

for (int i = 0; i < RECORD_COUNT; i++) {
KpiMajorProdIndusAllBO kpiMajorProdIndusAllBO = new KpiMajorProdIndusAllBO();
beanCollection.add(kpiMajorProdIndusAllBO);
}
return beanCollection;

}

}
5)生成业务BEAN
public class KpiMajorProdIndusAllBO { private String statDate = "999"; private int num; private String indexCode = "999"; private String indexName = "999"; private String ytmDataValue = "999"; private String lyYtmDataValue = "999"; private String yoyYtmDataValue = "999"; private String quoYtmDataValue = "999"; public KpiMajorProdIndusAllBO() { } public String getStatDate() { return statDate; } public void setStatDate(String statDate) { this.statDate = statDate; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } public String getIndexCode() { return indexCode; } public void setIndexCode(String indexCode) { this.indexCode = indexCode; } public String getIndexName() { return indexName; } public void setIndexName(String indexName) { this.indexName = indexName; } public String getYtmDataValue() { return ytmDataValue; } public void setYtmDataValue(String ytmDataValue) { this.ytmDataValue = ytmDataValue; } public String getLyYtmDataValue() { return lyYtmDataValue; } public void setLyYtmDataValue(String lyYtmDataValue) { this.lyYtmDataValue = lyYtmDataValue; } public String getYoyYtmDataValue() { return yoyYtmDataValue; } public void setYoyYtmDataValue(String yoyYtmDataValue) { this.yoyYtmDataValue = yoyYtmDataValue; } public String getQuoYtmDataValue() { return quoYtmDataValue; } public void setQuoYtmDataValue(String quoYtmDataValue) { this.quoYtmDataValue = quoYtmDataValue; } }
相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
阿里云实时数仓实战 - 用户行为数仓搭建
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3&nbsp;)前置知识要求:熟练掌握 SQL 语法熟悉 Linux 命令,对 Hadoop 大数据体系有一定的了解 &nbsp; 课程大纲 第一章&nbsp;了解数据仓库概念 初步了解数据仓库是干什么的 第二章&nbsp;按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章&nbsp;数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章&nbsp;采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章&nbsp;用户行为数据仓库 严格按照企业的标准开发 第六章&nbsp;搭建业务数仓理论基础和对表的分类同步 第七章&nbsp;业务数仓的搭建&nbsp; 业务行为数仓效果图&nbsp;&nbsp;
相关文章
|
算法 Java 程序员
基于Java的连连看游戏设计与实现
基于Java的连连看游戏设计与实现
580 0
|
7月前
|
JSON 前端开发 Java
深入理解 Spring Boot 中日期时间格式化:@DateTimeFormat 与 @JsonFormat 完整实践
在 Spring Boot 开发中,日期时间格式化是前后端交互的常见痛点。本文详细解析了 **@DateTimeFormat** 和 **@JsonFormat** 两个注解的用法,分别用于将前端传入的字符串解析为 Java 时间对象,以及将时间对象序列化为指定格式返回给前端。通过完整示例代码,展示了从数据接收、业务处理到结果返回的全流程,并总结了解决时区问题和全局配置的最佳实践,助你高效处理日期时间需求。
910 0
|
10月前
|
移动开发 前端开发 JavaScript
SpringBoot3 整合Thymeleaf 模板引擎
Thymeleaf 是一个基于 Java 的现代模板引擎,支持 HTML 原型,文件后缀为 .html,可直接在浏览器中查看静态效果。它与 Spring Boot 完美整合,默认配置即可使用,无需额外视图解析器设置。Thymeleaf 支持多种表达式(如变量、链接、国际化等)和 th 属性(如 th:text、th:if 等),适用于 Web 和非 Web 应用开发。通过 th:fragment、th:insert、th:replace 和 th:include 等属性,可以抽取和复用公共页面片段,并支持参数传递。
1418 12
|
C# UED SEO
C# 异步方法async / await任务超时处理
通过使用 `Task.WhenAny`和 `Task.Delay`方法,您可以在C#中有效地实现异步任务的超时处理机制。这种方法允许您在指定时间内等待任务完成,并在任务超时时采取适当的措施,如抛出异常或执行备用操作。希望本文提供的详细解释和代码示例能帮助您在实际项目中更好地处理异步任务超时问题,提升应用程序的可靠性和用户体验。
526 3
|
Python
利用Python判断一个数是否在列表中
利用Python判断一个数是否在列表中
1271 0
|
存储 运维 Linux
运维系列.在Docker中使用Grafana(一)
运维系列.在Docker中使用Grafana(一)
1923 5
|
JavaScript 前端开发 PHP
什么是单点登录,单点登录的逻辑,思路,
什么是单点登录,单点登录的逻辑,思路,
520 0
|
SQL Java 数据库连接
成功解决:was not registered for synchronization because synchronization is not active
这篇文章是关于解决Mybatis在同步过程中出现"was not registered for synchronization because synchronization is not active"错误的技术博客。
成功解决:was not registered for synchronization because synchronization is not active
|
前端开发 Java BI
Spring3 Web MVC 集成Jasper Report生成PDF例子
Spring3 Web MVC 集成Jasper Report生成PDF例子
191 7
|
消息中间件 Java Kafka
Spring Boot与Apache Kafka Streams的集成
Spring Boot与Apache Kafka Streams的集成