第一次写博客,小弟对JAVA也不是很熟,一直从事.NET开发,不过两者语法似同,不说废话了。
公司要开发WEB报表,而我们一直是.NET CS开发的,几乎没接触过BS,也只是事下学习点。。
花了几天研究了ireport,发现Ireport几乎可满足各式需求类型。不过也一样不好,那就是在
ireport中无法调用存储过程(orace)来调用结果数据。好像SQLSERVER可以返回select结果。
这样发现有一种情况实现不了:就是从数据库查询出的字段是动态的无法确定的。这就可能要用上
动态语句,但是在ireport上实现不了,于是有了想法:网上找了好多资料,都没明确的发现,只是
发现有人来动态生成列,在百度BLOG上有一篇说的非常不错,就是使用ireportdesign来实现,
生成jasper文件。
基本思路如下:
1.在Ireport设计器中画出模板:列名,绑定列(设置好key名),如果要用到数据库就再增加一个field,不然生成jxml不成功,
这样模板做好了:
下面是从数据库里获取结果集里,
2:编程实现列名,列数据,绑定列,位置我是使用模板列中的列的位置,然后计算下一个列的位置(可根据自己设置位置)
代码如下:
Ireport版本:ireport3.6.3
小弟也是第一次接触JSP。希望有高手交流!