【IT168 技术文档】
一、目的
查找报表工具,了解各报表工具的基本功能,选择一种报表工具,实现能够在以纯java为开发语言的基础上,C/S结构的App Server开发过程中进行报表制作目的,完成报表打印功能。
二、背景
在当前情况下,以纯java为开发语言的B/S结构下报表与打印功能仍然很缺乏,实现的方式主要是在JSP中用IE直接显示(用css控制打印)、用JSP生成word/execel文件形式显示和打印、在IE中调用Active控件显示和打印、编写类调用存java的itext接口PDF输出形式显示打印、使用第三方报表工具,但是,除了使用第三方报表制作工具外,都或多或少的存在不足(纯属个人实践产生的观点)。
以C/S结构的报表打印,能满足需要的实现方式更少,夜幕开始降临,只好从第三方报表工具入手了。
三、工具简介(排名不分先后)
工具 |
使用介绍 |
StyleReport |
产品分三类(排名分主次): 企业版Style Report/EE 专业版Style Report/Pro 基本版Style Report/Print 下载地址: 使用举例: 最简单应用就是将它嵌入到客户端的用户图形界面(GUI)中。增加对显示在屏幕上的数据的打印支持: /************* StyleSheet report = new StyleSheet(); report.addTable(new JTableLens(jTable1)); report.print(); *************/ 实现查询过程: /************* XSessionManager.getSessionManager(null).execute(report); *************/ 个人评价: 优点 功能强大、需要完成的功能从感觉上都能实现、100%Java实现 缺点 使用帮助文档奇~~~少!!!无法演示,无法找到技术支持,下载的版本为受限制的企业版 |
SuperVisualFormade |
产品分类: 根据用户需求提供报表的不同使用部件 下载地址: www.tsubasa-tool.com/chi/index.htm 使用举例: 略 个人评价: 优点 功能强大、提供上门服务与演示 缺点 只提供B/S的报表设计,没有用于C/S的设计软件,组合部件奇~~~多,价格贵,购买使用限制太~~~多 |
jatools |
产品分类: 略 下载地址: 使用举例: 略 个人评价: 优点 号称“中国人自己的java报表“ 缺点 到目前为止,没提供帮助文档,功能还不完善 |
MAXReports |
产品分类: 数巨报表产品套件主要由三部分组成:报表设计器、报表引擎和报表浏览器 下载地址: 使用举例: 略 个人评价: 优点 应用面广:支持J2EE、ASP、ASP.NET等WEB环境的应用 缺点 非纯java结构,感觉公司太远,不能够用到C/S结构的java应用。 |
JasperReports |
产品分类: 开源(免费)。 下载地址: jasperreports.sourceforge.net 使用举例: 编译一个报表: /************* dori.jasper.engine.JasperCompileManager.compileReport(myXmlFileName); *************/ 填充报表: /************* Map parameters = new HashMap(); parameters.put("BaseDir", reportFile.getParentFile()); parameters.put("ReportTitle", "Address Report"); parameters.put("FilterClause", "'Boston', 'Chicago', 'Oslo'"); parameters.put("OrderClause", "City"); byte[] bytes = JasperRunManager.runReportToPdf( reportFile.getPath(), parameters, new WebappDataSource() ); *************/ PDF格式输出: /************* ServletOutputStream ouputStream = response.getOutputStream(); ouputStream.write(bytes, 0, bytes.length); *************/ 个人评价: 优点 免费!!!功能强大、需要完成的功能从感觉上都能实现、100%Java实现 缺点 使用帮助文档少!免费的无技术支持,如果没有过此类报表经验和足够的文档及时间,还是不要乱撞。 |
JReport |
产品分类: JReport Designer 报表设计器 JReport Enterprise Server 报表服务器企业版 下载地址: jinfonet.com/download.htm 使用举例: 显示报表: /************* JRResultViewer bean = new JRResultViewer(); bean.setReportName(reportRSTFile); bean.setLoadReport("yes"); show(); *************/ 打印报表: /************* bean.printReport(); *************/ 保存成PDF文件格式: /************* bean.exportToPdf(reportPDFFile); *************/ 个人评价: 优点 功能强大、需要完成的功能从感觉上都能实现、100%纯Java实现、下载版本为企业正式版、自带使用和API介绍帮助文档多、讲解详尽 缺点 C/S结构中,报表刷新、显示速度、打印还不理想 |
四、个人感觉
1、 帮助文档分散
学习JReport报表工具跟学其他报表工具相比,对于象我这样一个初学者来说,就感觉明显的不一样,JReport帮助文档集中而且从浅入深、从深到专业都有,感觉象JBUILDER9和JBUILDERXP的安装,帮助和安装都集中在一起。
2、 网上精英多
网络是学习的乐土,最快乐的莫过于。。。 ^_^
5 当前问题:
a) JReport的DesignSetup.exe(程序中调用报表设计器的component)在安装时需要序列号,但下载时也没有提供。
b) 真正的报表工作还没有开始。