初识JasperReport和iReport

三个Java报表工具
报表是非常复杂的程序,手工开发报表的难度非常大,几乎是不可能的一件事情
报表工具有很多,这里只列举三个
①水晶报表。。最早它是面向于Windows系统的最有名的一个报表工具,现在它也有了针对Java方面的相应实现
②BIRT。。即Business Intelligence and Reporting Tools商业智能和报表工具,官方站点http://www.eclipse.org/birt
③JasperReport。。一个非常强大的报表工具,Struts2提供了与该报表工具的整合策略
JasperReport项目以前是依托于SourceForge,现在实际上也是依托于SourceForge
它以前没有自己的独立站点,现在已经有了,即http://www.jasperforge.org
其中JasperReport是出现最早的而BIRT出现最晚,但是BIRT依托于Eclipse开源组织得到了迅猛的发展


JasperReport和iReport简介
JasperReport本身是一个格式非常复杂的XML文件,并且真实中项目的需求是千变万化的,不可能完全写Java代码去开发它
事实上,如果不使用可视化工具的话,根本就无法开发它。所以JasperReport为我们提供了一个可视化的辅助工具,即iReport
二者是同一个开源项目下的两个产品,并且总是结合在一起使用的。因此,开发报表时,都要用到它的可视化设计器iReport
iReport和JasperReport是独立的故下载时须保证二者的版本是匹配的。以前二者的版本是独立命名的,现在版本号已经统一
首次启动//iReport-2.0.5//ireport.exe时会在C://Documents and Settings//系统登录名//建立名为.ireport目录
.ireport目录中会生成一个config.xml文件,我们对iReport的修改和配置都会保存在config.xml中,我们也可以直接编辑该文件


iReport-2.0.5中的Fields

三大主力
Fields、Variables、Parameters是iReport中非常重要的三个东西
Fields是指报表上的表达式$F{field},即获取数据表的字段值
Variables和Parameters与Java中的是一样的,分别指的是变量和参数
因为报表不可能是纯静态的,肯定要根据用户输入的数据来动态查询,因此就要接收参数
并且有些时候也要定义变量,让其它地方引用该变量


手工设定Detail中显示的字段
Build--SetActiveConnection--选择已配置好的数据库连接--OK
此时该数据库连接就设定到当前报表中了,接下来再把表字段设定到Detail中
Data--ReportQuery--然后就会打开报表查询窗口,它默认支持多种语言
然后我们再输入SQL语句,比如select * from person,此时下方会自动显示查询结果
然后在ReportQuery窗口中点OK,就表示当前报表可以使用PERSON表中所有字段
我们在DetailBand中放置一个TextField按钮,这时报表上就会显示$F{field}字样
于是可以修改$F{field}令其显示具体字段值,比如$F{age}显示表中age字段值


iReport-2.0.5中的Variables

定义变量
View--Variables--点击Variables选项卡
在Variables中会看到5个大写字母的变量,这是iReport内建的,即Built-in
再点击New建立自己的变量,然后在弹出窗口中指定变量名和类型
最下面的InitialValueExpression用来设定初始值的表达式,缺省为null
然后VariableExpression用来设定变量的表达式,我们可以点击它右侧的小按钮
然后会弹出Expression editor...窗口,比如我们输入new java.util.Date()
若输入的表达式错误,则中间会显示红色字体。这种编辑方式很类似于存储过程
建立好变量后,展开iReport左边Document structure透视图Variables选项
将刚才定义的变量拖动到报表中就可以看到类似$V{variableName}


内置变量
展开Document structure中Variables选项将PAGE_NUMBER拖动到报表中
预览报表时就会发现每一页都会显示页号,这就是5个内置变量的魅力所在
另外iReport右侧Library透视图中的PageXofY变量可以显示Page2of7字样


iReport-2.0.5中的Parameters

定义参数
View--Parameters--点击Parameters选项卡,同样iReport也内建了一些参数
我们可以在DefaultValueExpression中指定参数的默认值,比如"This is a parameter"
注意这里在指定参数默认值时,字符串需要用双引号引上
最下方的Editparameterproperties...用来编辑属性,我们暂时无需理会它
注意UseasaPrompt单选框即设定parameter作为提示来使用,暂时勾选它
定义好参数后,同样展开Document structure透视图中的Parameters选项
将刚才定义的参数拖动到报表中就可以看到类似$P{paramName}


Parameterprompt
将参数定义为Prompt之后Execute报表时会弹出Parameter prompt对话框
假设這里输入Jadyer,那么预览的效果就是在$P{myParam}的位置输出了Jadyer
若Parameterprompt中什么都不输入,预览时$P{myParam}的位置就是空白
使用报表时需要根据外面的程序传过来的信息,来动态决定下一步做什么
这里Parameter就是外边传过来的参数,然后就可以把这个参数显示出来了
可以大致的认为Parameterprompt就类似于实际开发中的参数传递

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值