开源报表工具现状
目前较为知名的开源报表工具有:
1、 JasperReports 一个优秀的Java报表工具,始于2001,现在JasperSoft公司持续开发和支持该工具。该工具类似于商业软件 Crystal Report,支持PDF、HTML、XLS、CSV和XML文件输出格式,现在是Java开发者最常用的报表工具。
2、 OpenReports 提供基于web的灵活报表解决方案,通过浏览器自动生成动态PDF,XLS,HTMLCSV 和Chart报表,它是用Java开发的,使用JasperReports 作为报表引擎,利用到的开源技术有Hibernate,Veloctiy,Webwork。
3、JFreeReport 现在是Pentaho的一部分,它是一个优秀的用来生成报表的Java类库。它为Java应用程序提供一个灵活的打印功能并支持输出到打印机和PDF, Excel, HTML和XHTML, PlainText, XML和CSV文件中。
4、 Eclipse BIRT 是Eclipse下面的一个企业智能和报表工具,能为J2EE的WEB应用程序创建漂亮醒目的PDF或者HTML格式的报表,它提供了核心的报表功能。
Jasperreports
Jasperreports是一个非常优秀且流行的开源报表引擎,用户需要按照它的规则编写一个XML文件,然后得到用户需要输出的格式文件。
但是有一个问题就是,当我们在编写XML文件的时候,一个很简单的报表文件就会需要写很多行的XML。
iReport简介
iReport是为JasperReports设计的强大的,直观的,易于使用的可视化报表设计器采用纯Java开发。可以说iReport就是一个为JasperReports制作XML文件的可视化开发工具。
iReport 还集成了JFreeChart图表制作包。允许用户可视化地编辑XML JasperDesign文件以及包含charts,图片,子报表等复杂报表
用于打印的数据可以通过多种方式获取包括:JDBC, JavaBeans, XML , Hibernate(支持HQL查询语言), TableModels, CSV等。
它支持多种输出格式包括:PDF,RTF,XML,XLS,CSV,HTM等。
iReport功能特点
完全支持JasperReports XML标签
所见即所得的报表编辑器,也就是说它具有创建矩形,线,椭圆,正文区域,标签,图表,子报表,条码等完善的工具图标供使用。
完善的报表编译器和输出器
支持所有可以通过JDBC连接的数据库
支持所有有效的数据源
自动报表创建向导
支持子报表
可添加插件扩展功能
支持图表
支持拖拽
批量修改元素属性
iReport缺点
相对BIRT来说,系统集成度不足(各种功能都有,但是显得比较零散, 有些比如字体还要自己配来配去)。
设计界面的用户友好程度不够,在这方面BIRT更优。
对于交叉表操作起来比较繁琐,可能有些复杂的报表还没法实现。
尽管对图表支持,但是感觉支持并不是很好。
在制作报表的时候,表格需要用控件画出来,这一点不如用网格设计来做(BIRT),尤其是在进行表格线对齐的时候,不好操作。