近一年处理了些报表问题,调研不少报表工具,也开发了适合公司业务的报表工具。分享一些关于如何选择Java 报表工具的个人观点,希望对你有参考作用。


对于企业来说,花钱就能快速解决的问题,肯定不会自己花时间、人力去研发和维护一套产品,除非不得已。企业首选是购买一款成熟、稳定的商用产品。现有的商用产品满足不了需求,才会考虑去研发报表工具。


第一个选择:商用报表产品

目前市场上功能强大,占有率高的两款 Java 报表工具,帆软报表和润乾报表。


帆软报表的特点

  • 功能强大,覆盖的行业广,基本能满足所有的报表需求

  • 报表页面美观、炫酷

  • 可基于插件方式进行定制,也一直在培育众包市场

  • 售后做的挺好,QQ客服反馈快

  • 文档和社区做的还可以

  • 上手简单,不懂代码也可以通过类excel设计器制作出报表

  • 价格贵,几万 ~ 几十万

  • 功能做的太细,有些功能点显得比较死板。比如,需要页眉页脚高度不统一、需要较小行间距、单元格字体自动缩放...

  • 较耗内存


润乾报表特点

  • 价格相对便宜,性价比高

  • 感觉售前、售后一般(今天特意在官网咨询了下使用问题,提示人不在,联系销售)

  • 对类excel操作支持更友好

  • 性能和并发处理更优,擅长大容量复杂报表

  • 美观、图表有待加强

  • 入门难度略大


总结:帆软简单易用,无需开发也可以制作出报表,页面美观,API丰富,但价格较贵,适合现场运维人员根据需求直接制作报表;润乾门槛高,页面没那么美观,性能更优,性价比高,适合有专业报表团队处理复杂报表。


第二个选择:自研

自研复杂的报表工具,会遇到一些难题。如:打印报表;复杂的数据计算;复杂格式的报表展示;页面、打印、导出word、pdf、excel格式一致性;图表...


Java报表引擎

  • JasperReports,配合设计器ireport使用。但资料较少,出了问题难查找,设计器调整报表格式麻烦。

  • EasyReport、ureport,开源的web端设计报表工具,可以参考部分功能实现。


图表前端库

  • ECharts

  • Highcharts

  • D3


Java office、pdf 操作组件库

  • Apache POI

  • JXL

  • iText

  • OpenOffice

  • PDFBox

  • jquery.table2excel.js


打印方式

  • 浏览器自带打印及其js控件,较难干预样式,连续打印、页眉页脚,分页等存在问题

  • pdf流打印,需要下载adobe插件

  • ActiveX,java类报表工具基本不用

  • Applet打印,依赖jre


总结:自研报表工具坑很多,需要投入很大人力。

 


PS

国内市面上还有很多报表工具,如:RDP报表、SMARTBI SPREADSHEET、Crystal Reports、ActiveReports、简表、杰表等都可以去调研下是否适合自己业务。


国外有很多报表工具不做推荐,因为上手困难,遇到问题处理基本找不到资料,不适合中国式报表。


更多相关文章

  1. 报表导出
  2. 一个同步工具类CyclicBarrier的详解(干货分享)
  3. 一文带你理解java中的同步工具类CountDownLatch
  4. Web API 文档生成工具 apidoc
  5. jvm系列(5)性能监控工具
  6. 给你5分钟白漂:我的常用在线工具网站
  7. Linux性能优化(一)——stress压力测试工具
  8. Linux性能优化(二)——sysbench压力测试工具
  9. Linux性能优化(四)——BCC性能监控工具

随机推荐

  1. 每天一算:Remove Nth Node From End of Li
  2. 【图解数据结构】 一组动画彻底理解选择
  3. 每天一算:Valid Parentheses
  4. 每天一算:Reverse String
  5. 【图解数据结构】 一组动画彻底理解快速
  6. 每天一算:Evaluate Reverse Polish Notati
  7. 每天一算:Remove Linked List Elements
  8. 【图解数据结构】 一组动画彻底理解插入
  9. 每天一算:Binary Tree Preorder Traversal
  10. 每天一算:Swap Nodes in Pairs