选开源报表开发还是商用?2020报表软件产品整理

简介: 开源报表却越来越受到程序员热烈追捧,如ireport、 Jsper report、jfreechart这样的免费,开源的JAVA报表工具,在一下开源的JAVA报表相关的论坛里面都是热火朝天,发问者众多。

开源报表却越来越受到程序员热烈追捧,如ireport、 Jsper report、jfreechart这样的免费,开源的JAVA报表工具,在一下开源的JAVA报表相关的论坛里面都是热火朝天,发问者众多。发现都会有利有弊,近因为公司需求的原因,我上网查找了好多报表工具和试用体验,下面是我向大家推荐5个开源报表工具。

1.iReport

iReport是为JasperReports设计的强大的,直观的,易于使用的可视化报表设计器,用Visual J++为Win32平台编写。iReport允许用户可视化地编辑XML JasperDesign文件,可以和其它数据库通过JDBC通信。在设计模板时可以以Html、Excel、Pdf等多种方式进行预览;用它生成的文件有.jrxml、.jasper两种文件,其中.jrxml就是我们设计时可视化编辑的xml文件,.jasper是经过编译.jrxml后生成的类文件,也就是我们最终在项目中用的报表模板文件。

2. JasperReport

JasperReports是一个基于Java的开源报表工具,基于GPL开源许可协议, 完全采用java编写, 支持多种数据源,可打印或导出多种文件格式,支持PDF、HTML、XLS、CSV和XML文件输出格式。JasperReports是当前Java开发者最常用的报表工具。

JasperReport也包含多个组件:

JasperReports Library 开源报表引擎库
JasperReports Server 是一个独立可嵌入的报表服务器,对数据进行分析和提供定时任务服务。
Jaspersoft Studio 是基于Eclipse的报表设计器,它能创建包含图表、图像、子报表、交叉表等复杂的报表。数据源可以是JavaBeans,XML,CSV Hibernate。
Jaspersoft ETL 是易于部署和执行的开源ETL系统, 创建一个综合的数据仓库和数据集。

iReport是为JasperReports设计的强大的,直观的,易于使用的可视化报表设计器,采用纯Java开发。这个工具允许用户可视化编辑包含charts,图片,子报表等的复杂报表。
**
3、jfreechart**

JFreeChart 是一款易于扩展的纯Java编写绘图图库, 使用它可以生成线图、柱状图、饼图、曲线图、面积图、甘特图、仪表盘、混合图等多种图表,并可将图表输出为PNG、JPEG图片。

稳定、轻量级,支持多种图表类型
一个灵活的设计,很容易扩展,并应用于服务器端和客户端的应用程序
支持多种输出类型,包括Swing组件和JavaFX组件、图像文件(包括PNG和JPEG)和矢量图形文件格式(包括PDF、EPS和SVG)
JFreeChart是开源的,基于GNU通用公共许可证 (LGPL)开源许可协议

这里要强调的是:iReport-0.5.0中集成了jasperreports-0.6.7、jfreechart-0.9.21,所以用iRepot-0.5.0就完全可以开发报表了,但在iReport中进行图形统计报表的开发没有采用,而是直接引用其组件包进行自己手写类来开发的(因为对图形统计图的开发iReport支持的并不好)

4、Pentaho

Pentaho将你所有的数据转变成有意义的信息,为您设计Pentaho报表,一套开源的工具,允许你创建完美的报表,支持输出Excel、PDF、HTML、文本、富文本文件,XML和CSV,生成的报表可以很容易地从各种来源提炼成可读的数据。

Pentaho报表的开发是通过创建一个灵活且简单易用的报表引擎。这是一套开源工具,包括Report Designer、Reporting Engine和Reporting SDK。

5、BIRT

BIRT 是基于 Eclipse 的一款开源报表,创建数据的可视化和报表,可以嵌入到富客户和Web应用程序。

BIRT主要由两部分组成:一个用于创建BIRT设计的可视化报表设计器,以及可以部署到任何java环境运行时组件。BIRT项目还包括一个图表引擎,可集成到BIRT的一个应用程序图表。

BIRT设计模板保存为XML,可以访问多个不同的数据源包括JDO数据存储,jfire脚本对象、POJOs、SQL数据库、Web服务和XML。

报表方面目前测试做些简单的行式、分组交叉类报表还比较容易,稍微复杂点可能做起来有点麻烦(比如多数据集取数方面有点没搞懂,还未测试),这点实际和没有完善的学习文档有关,不方面查找。

统计图方面,常用的柱图、饼图、折线都提供,但其他的种类就相对少了,另外图形有点老,看着不够高大上,只能说有此功能了。

补充一点,本人是作为一个开发人员来测试birt,对eclipse熟悉,所以上手感觉还可以,但对于只是有sql基础、简单了解java或jsp开发的就来搞birt的话,还是会有很多问题。 Ps:这个就看领导们安排什么水平的员工来开发报表了。

以上是常用的 JAVA 开源报表开发软件,之所有选择它们是因为有专业的报表软件、纯JAVA的、有专业论坛提供大家资源分享、免费(这是最重要的)、用起来更为灵活。综上所述决定性因素只有应该:免费、灵活。

那么报表软件,到底免费与收费孰优孰劣?

首先,免费的java报表开发能给我们带来什么?答案显而易见:拥有了一定可用性的报表软件;开源的代码能够拥有灵活的可定制能力和完全的控制;最重要的是免费。但是开源工具都有个通病,就是开发和维护成本比较大,如果你企业想上报表工具,怎么也得招/培养2、3个开发人,而且学习资料多为英文。而且Jsper report、ireport的所有帮助文档是收费的,文档倒是相当细致,需要花大量的时间阅读。这才明白:所谓开源不可能真的有人那么无聊为人民服务,说白了还是要挣钱的,否则产品的后续研发怎么办?

而且Jsper report、ireport的制表能力实在一般,老外的东西,本质上就不符合咱的报表习惯,报表似乎就该这么做,做不出来的报表似乎就应该写程序、写代码,最后用工具的结果还是去写代码,还不如不用呢。

另外,在论坛里,像“请教高手某某问题如何解决”这类的帖子比比皆是。首先解决问题的时效性不高,需要等待不能即时被答复,而且也不一定有人能遇到过同样的问题,并愿意热心帮你解决,这时就会干着急,希望有人技术支持一下。其实仔细算算,花在这些问题上的时间成本、人工成本,还不如买一个收费的工具?

选择收费的报表软件

首先在你有问题的时候能找专业的java报表厂商支持你,不用在论坛里发些的不一定有准确答复的求问贴了,更有甚者可以叫厂商直接帮你做部分表。做事是讲究效率的,与其浪费时间去自学开源工具的文档,还不如边学边做不懂就直接问报表工具厂商。这样能更顺利高效的完成项目。

我以前的公司做项目时老板就是不肯花钱,以为是省钱,结果,由于不能及时完成折了好几个项目。所以,再碰上选择报表软件的时候,一定不要怕跟老板倾诉: 报表制作其实是很专业的的活,花钱买一个工具比用开源工具划算。

下面的商业报表工具,其实成本算下来也无差,产品提供部署服务,可以走项目,后期还有技术维护。

商用报表工具:

1、XJR快速开发平台报表工具

使用多年钻坚研微的成熟稳定的第三方插件,提供大量标准报表模板,满足各行业不同的需要。使用简单,会数据库就可以用。不需要再出报表授权费用。还有很重要的一点就是已经集成在开发平台内不需要再做整合。XJR快速开发平台融合了时下最实用的web及互联网应用技术,集成多类业务场景。面向服务/接口设计,可轻松集成或集成到外部系统,轻松整合企业现有资源。

价格平民,功能实用,符合中国国情的报表需求;

开发上手快,不需要专业人员,会数据库就可以用。
_2

2、帆软报表

功能较为齐全,适应大多数行业的功能,

价格较贵,基础版价格:80000元/ 服务器,高级版价格:500000/服务器

3、 水晶报表CrystalReport

SAP公司的商业报表工具,作为SAP“集团”下的报表组件模块。10年事前盛行一时,后被SAP收购。但水晶报表(Crystal Report)在理论上只支持单数据集,对多集的支持依赖于数据库的运算能力(叉乘与联合等或写存储过程),多库一般难以支持。

4、 cognos IBM Cognos Business Intelligence

Cognos功能是很强大的,但是操作的复杂度比较高。如果是普通的列表,操作确实也简单,如果是格式复杂或者是统计数据来源表比较多的时候,至少对于我这样的新手来说,操作起来就没那么得心应手。

5、其他:例如Oracle的BIEE算是商用BI工具,包括在商业智能方案里。国产的还有润乾、斯迈特等等,不多赘述。

一句话总结:

商用>开源,开源需要很强的代能力,项目上线时间长,容易不稳定,后续维护需要不停改代码。

国产>国外,这一点上不要“崇洋媚外”了,事实证明,国产报表更懂表格表姐的心。

不管选择哪类工具,最重要的还是满足业务需求,在满足的前提下寻找合适的工具。

相关文章
|
JavaScript Java 测试技术
『App自动化测试之Appium基础篇』| 从定义、原理、环境搭建、安装问题排查等深入了解Appium
『App自动化测试之Appium基础篇』| 从定义、原理、环境搭建、安装问题排查等深入了解Appium
5449 0
|
人工智能 JavaScript 前端开发
你可能不敢想象,2025 年,jQuery要更新到 4.0 了
jQuery,由 John Resig 于2006年创建,曾帮助无数开发者简化DOM操作、事件处理和动画效果。历经19年,即便在React、Vue等现代框架盛行的今天,jQuery仍在更新。最新版4.0.0 Beta已推出,修复问题、提升性能并加入新特性,展示了其适应时代的能力。jQuery不仅是技术的坚持,更是文化和精神的传承,见证了众多开发者的青春。
645 11
|
JavaScript 前端开发 开发者
基于Vue.js的前端框架有哪些?
Vue.js 是一款流行的前端 JavaScript 框架,用于构建单页面应用(SPA)。除了 Vue.js 本身,还有许多基于 Vue.js 的前端框架和 UI 库,它们提供了更多的功能和组件,以便开发者能够快速构建应用程序。
738 6
|
存储 数据可视化 前端开发
Web Audio API 第5章 音频的分析与可视化
Web Audio API 第5章 音频的分析与可视化
|
存储 算法 安全
Java中的DES和3DES加密算法详解
Java中的DES和3DES加密算法详解
|
SQL Java 大数据
5款开源BI工具优缺点及介绍
【4月更文挑战第15天】对比了几款开源BI报表工具:Superset以其高性能和高度可定制化受青睐,适合复杂分析;Metabase以其简洁易用和广泛兼容性脱颖而出,适合快速构建报表;DataEase以其轻量级和易部署特点吸引中小型企业;JasperReports擅长复杂报表生成,适合Java环境;Pentaho CE则是一体化平台,适合需要全面企业级功能的用户。选择时应结合公司需求、技术背景和数据规模来决定。
5854 6
|
监控 Dubbo 应用服务中间件
DUBBO--基础篇(二)--监控中心
DUBBO--基础篇(二)--监控中心
321 0
|
算法 数据挖掘 数据处理
超实用!五种常用的多离散化小技巧
超实用!五种常用的多离散化小技巧
924 0
|
存储 弹性计算 固态存储
阿里云服务器云盘有何区别?(ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘)
阿里云服务器云盘种类如何选?目前阿里云服务器有ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘可供选择,很多新手用户并不清楚他们之间的区别,也就不知道应该如何选择,因为不同的云盘在最大IOPS、最大吞吐量等性能上是有区别的,下面我们一起来他们之间的区别,这样就有助于我们选择适合自己需求的系统盘与存储盘了。
阿里云服务器云盘有何区别?(ESSD AutoPL、高效云盘、ESSD云盘、SSD云盘)

热门文章

最新文章