因项目需求,需要一个用户可定制的报表系统,本以为是个很轻松的工作,因为开源社区中有很多很强的开源框架,如JasperReport,openReport,birt等等,但仔细研究以后都很难满足我的需求,关键不是它们的功能不行,主要是他们都基于配置模板文件,虽然都提供了很好的Gui工具,可以很轻松绘制报表,但这都是基于给用户定制报表,如果想让用户定制报表该怎么办?我所说的定制包括,报表样式,group,列,实体,排列规则,筛选规则,及输出格式(html,word,excel,pdf).刚开始我的想法是先让用户提供各种定制参数,然后根据这些构建模板文件(大多是xml格式),然后用开源框架进行绘制。但我很快就放弃了这种想法,原因有两个:1)这些配置文件的格式都比较复杂(比如.jasper文件),自动生成的难度很大,并且也没这个必要;2)效率问题,因为此系统是要针对与多数用户,我担心系统吃不消。
经过仔细分析,我需要的报表系统的关键不是在报表的绘制,只要能达到清晰,明了的表格效果就足以。关键在于用户的定制。所以用一些大型的报表系统没有必要,我不需要那么多功能。逐渐我就有了自己开发一个基于web用户可定制的报表系统。
此系统的主要部分有三个,一个是用户定制数据搜集部分,第二个是根据定制数据进行渲染和输出,最后一个把定制数据保存在数据库中。难点也是这么三个,构建数据结构,根据数据结构绘制报表,把数据储存到数据库中。我打算借用swing的架构和思想,用mvc的架构,最初的系统还是基于ssh(struts+spring+hibernate),还是先满足项目需要,然后如果有时间再把它抽出来,只用jsp+sql+xml,还是想把它最后能做成一个独立框架,毕竟我认为是个很好的想法。难度很大,但也不是mission impossible,加油!给自己鼓劲!
定制化报表 java 定制化报表系统
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
RuoYi整合积木报表
RuoYi整合积木报表
xml spring .net -
【Spring Boot 源码学习】SpringApplication 的定制化介绍
本篇 Huazie 带大家一起从源码了解 SpringApplication的定制化配置
Spring Boot 源码学习 SpringApplication 定制化介绍 -
3、python自动化运维——定制业务质量报表
通过psutil和rrdtool模块相结合绘制网卡网络流量 &n
python 自动化 运维 -
SCCM2016定制软件资产报表
从ITpro的角度一步步定制SCCM软件资产报表
SCCM资产统计 SCCM资产报表 软件资产 -
工业定制化仪器设计资料:工业定制化仪器手册
存储扩展卡 , 工业控制卡 , 光纤扩展卡 , 视觉处理卡 , 工业定制化仪器
工业控制 工业定制化仪器 存储扩展卡 光纤扩展卡 视觉处理卡