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

本文详细介绍了在iReport中连接DB2数据库的具体步骤,包括解决连接问题的方法及使用JavaBean作为数据源的方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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; } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值