调研报告之开源web报表

标签: 无 分类: Java 创建时间:2020-07-01 02:24:06 更新时间:2023-10-20 11:23:28

有一些付费的报表生成工具,比如:
1.FineReport
2.DataV.
3.蛛网时代DataView(数据大屏)
4.盈帆报表
5.XMReport 报表打印方案,和生成报表的功能还是有些差距的。

功能强大,界面美观,还支持大屏数据报表,简直无懈可击啊。
有一些桌面的报表生成器:OpenRPT、FreeReportBuilder、JMagallanes、Wabit、下面我列举下我搜集到的关于开源的web报表生成工具,排名不分先后

1.KoolReport

简单的看了下官网,好像功能还很强大,有一个缺点就是系统是使用PHP搭建的,对于不会PHP的人来说,光搭建起来还是有成本的。不仅仅有官网,还有github仓库,只不过仓库的start比较少,只有几个。

还有一个地方,就是这个虽然是开源的,但是也提供了Pro版本,估计开源的和Pro的版本还是有一定的差距的,Pro版本大约是199美元,折合人民币大约1300块左右吧。

2.OpenReports

这个开源库已经不在维护了,官网也没有具体的介绍了,只是放了一个停止更新的说名和源码下载地址,我根据源码下载地址,也是没有找到相应的源码,就没有下载下来。

3.JasperReports® Library

官网看起来很low,除了JasperReports,还提供了iReport Designer这个工具,据有关方面透露,说国外的很多公司都使用这个报表生成工具。我粗略的查看了官网,没有找到具体的相关的安装和部署步骤,暂时作为备用的方案吧。

4.JavaEye Reporting Tool

这个工具到底是什么,其实我没有找到相关的官网,唯一说明的就是上面这篇文章中的介绍。比如:JERT是一个开放源代码的,基于web的,数据库报表工具,它能够让你不需要编程而能创建各种灵活的报表。(当然你需要了解一定的SQL知识)。在谷歌上直接搜这个名字,出现了很多的广告,这是我见过的广告最多的一次。

在不是广告的地方,找到的类似官网的地址,已经打不开了。

5.BIRT

官网介绍:

BIRT是一个开源软件项目,它提供BIRT技术平台来创建数据可视化和报表,这些可视化和报表可以嵌入到丰富的客户端和Web应用程序中,尤其是那些基于Java和Java EE的应用程序。
BIRT是Eclipse Foundation中的一个顶级软件项目,它是一个由软件行业供应商和一个开源社区组成的独立的非营利性财团。

BIRT提供了应用程序和web端部署方式。web端部署可以部署到tomcat中,部署到tomcat中的叫BIRT Viewer

6.EasyReport

这个是个人的项目,使用Java SprigBoot编写的,但是只是提供了报表的功能,没有图表显示的功能,启动和部署说明也有,EasyReport(ver2.0) 用户操作手册

码云上还推荐了其他的几个开源的报表生成项目,比如:Java 报表引擎 UReport2、数据分析工具 CBoard、简单的报表工具 biplatform,这些都有开源的代码,但是功能好不好,就很难说了。

7.combit

通过谷歌的广告点进来的,一看网站,这个就是收费的。但是支持C#语言开发。

8.incubator-superset

这个是Apache开源的一个报表生成器,开源的start已经达到了29k了,在介绍中,像Airbnb和bilibili等公司也都在使用。还有相应的Kyline版本Kyligence/Insight-for-Superset,不过这不是官方的,只是个人的项目,start也不是很多,只有49个。

9.RDP报表工具

这个看了官网,感觉也很酷炫,demo示例。据介绍是免费的,可以获取免费的授权码

总结
总结起来,开源的会有各种各样的问题,不一定能满足公司的要求,收费的有保障,有技术支持,有丰富的功能,就是价格贵。那么我觉得如果要进行筛选的话,可以排列如下的实验次序:

  • 1.RDP报表工具
  • 2.SuperSet项目
  • 3.BIRT
  • 4.JasperReports
  • 5.可以考虑到在码云上的一些开源的代码,比如:EasyReport等。
参考文章:
1.12个最好的开源报表工具 (这里讲了十二个报表,但是更多的是桌面的,不符合web部署的要求)
2.流行的开源报表工具都有什么? (这篇文章的前几个回答都非常的不错)
3.报表工具花钱or开源?我对比了这6个工具 (主要介绍了水晶报表和帆软报表)
小额赞助
本人提供免费与付费咨询服务,感谢您的支持!赞助请发邮件通知,方便公布您的善意!
**光 3.01 元
Sun 3.00 元
bibichuan 3.00 元
微信公众号
广告位
诚心邀请广大金主爸爸洽谈合作
每日一省
isNaN 和 Number.isNaN 函数的区别?

1.函数 isNaN 接收参数后,会尝试将这个参数转换为数值,任何不能被转换为数值的的值都会返回 true,因此非数字值传入也会返回 true ,会影响 NaN 的判断。

2.函数 Number.isNaN 会首先判断传入参数是否为数字,如果是数字再继续判断是否为 NaN ,不会进行数据类型的转换,这种方法对于 NaN 的判断更为准确。

每日二省
为什么0.1+0.2 ! == 0.3,如何让其相等?

一个直接的解决方法就是设置一个误差范围,通常称为“机器精度”。对JavaScript来说,这个值通常为2-52,在ES6中,提供了Number.EPSILON属性,而它的值就是2-52,只要判断0.1+0.2-0.3是否小于Number.EPSILON,如果小于,就可以判断为0.1+0.2 ===0.3。

每日三省
== 操作符的强制类型转换规则?

1.首先会判断两者类型是否**相同,**相同的话就比较两者的大小。

2.类型不相同的话,就会进行类型转换。

3.会先判断是否在对比 null 和 undefined,是的话就会返回 true。

4.判断两者类型是否为 string 和 number,是的话就会将字符串转换为 number。

5.判断其中一方是否为 boolean,是的话就会把 boolean 转为 number 再进行判断。

6.判断其中一方是否为 object 且另一方为 string、number 或者 symbol,是的话就会把 object 转为原始类型再进行判断。

每日英语
Happiness is time precipitation, smile is the lonely sad.
幸福是年华的沉淀,微笑是寂寞的悲伤。