温馨提示:您的每一次转载,体现了我写此文的意义!!!烦请您在转载时注明出处http://www.blogjava.net/sxyx2008/谢谢合作!!!

雪山飞鹄

温馨提示:您的每一次转载,体现了我写此文的意义!!!烦请您在转载时注明出处http://www.blogjava.net/sxyx2008/谢谢合作!!!

BlogJava 首页 新随笔 联系 聚合 管理
  215 Posts :: 1 Stories :: 674 Comments :: 0 Trackbacks

            请阅读word文档

            开发意图:

 在web开发中经常需要将jsp或html页面中表格数据导出为pdf、doc、xls等格式。然而在实现这一功能用到了一些开源的组件,每实现这一功能时都需要编写大量重复性代码。由此,对该部分进行了封装,做到通用性,在有需求的情况下,只需要拷贝相应的组件或依赖的JAR包到你的工程中,进行配置即可。

            功能:

 本组件可以将表格中的内容导出为pdf、doc、xls、jpg(采用了ImageIo,导出图片效果不是很好)。
 上述四种类型的报表组件所使用的技术
 pdf使用到了iText.jar由于需要支持中文所有用到了亚洲字体包iTextAsian.jar
 doc word文档这里并没有使用到jacob,而使用了iText的另一个jar包iText-rtf-2.1.7.jar,借助该jar可生成rtf格式的文档,而指定文件后缀名时指定为.doc即为word文档,之所以使用该jar,是因为它简单方便。
 xls使用了apache的开源组件poi-3.6-20091214.jar
 jpg使用jdk自带的ImageIo
 jquery 项目中用到了jquery,使用jquery遍历页面表格中的内容,然后将数据发送到后台对数据进行处理,根据用户需求生成对应的文档。

            环境:

     开发环境:
WindowsXP sp3/Windows7+jdk1.6.13+javaee1.4/javaee5+myeclipse6.5+tomcat5.5/tomcat6.0+jquery
     测试环境:
WindowsXP sp3/Windows7+jdk1.6.13+javaee1.4/javaee5+IE8+firefox3.6+tomcat5.5/tomcat6.0

            组件包

核心组件:com.future.report_1.0.0.201007291116.jar
依赖的JAR:
iText-2.1.7.jar①
iTextAsian.jar②
iText-rtf-2.1.7.jar③
poi-3.6-20091214.jar④
注:其中①②项为生成pdf所依赖的jar包
 ③项为生成doc文档所依赖的jar包当然它同时依赖①②项
 ④为生成excel所依赖的jar包
 
            com.future.report_1.0.0.201007291116.jar类明细图

 

com.future.report.Activator此类实现了osgi的org.osgi.framework.BundleActivator。开发中不关心这个类
com.future.util.report.controller.ExportReportServlet初始的报表导出servlet。只需配置该servlet到你的工程中即可
com.future.util.report.encodingfilter.EncodingFilter字符集过滤filter一般设置为utf-8你可以在web.xml中修改它
com.future.util.report.factory.ExportReportFactory报表导出工厂,根据用户传递过来的报表类型创建能生成对应该类型报表的实例
com.future.util.report.factory.ReportFontFactory 用于pdf word文档的字体生成工厂
com.future.util.report.impl.ExportReportForExcel 此类用于生成Excel格式的报表
com.future.util.report.impl.ExportReportForJPG此类用于生成JPG图片
com.future.util.report.impl.ExportReportForPDF此类生成PDF格式的文档
com.future.util.report.impl.ExportReportForWord此类生成Word文档
com.future.util.report.intf.IExportReport此类内部定义了一枚举用来标识要生成的报表类型
com.future.util.report.tags.ERTagUtil此类用于读取META-INF下的js文件并生成到WebRoot/er_js目录下
com.future.util.report.tags.ExportReportTag报表导出标签
具体参考对应的Javadoc或源码
            注:
在lib目录下
com.future.report_1.0.0.201007291116.jar使用eclipse-plugin打成的JAR包
export-report_1.2.jar为eclipse工程导出的jar包
两个jar没有功能上的差异都可以使用,二者各选其一即可


            注:由于文档中含大量图片不方便一一上传,如需了解直接下载该组件包,内含详细的文档及源码和例子
            点我下载该组件包及源码和例子

posted on 2010-08-06 20:42 雪山飞鹄 阅读(3589) 评论(5)  编辑  收藏 所属分类: javase

Feedback

# re: [原创]报表导出组件,轻松配置,一键将web表格导出为doc、xls、pdf、jpg 2010-08-10 10:26 快播影视圈
我们公司 报表 直接 买的
。。。  回复  更多评论
  

# re: [原创]报表导出组件,轻松配置,一键将web表格导出为doc、xls、pdf、jpg[未登录] 2010-08-12 12:21 小牧
谢谢分享,发现几个问题:
1、对于td中包含colspan,rowspan处理还有问题
2、导出的报表没有样式
3、如果table的数据使用了后端分页,如何导出所有数据呢?  回复  更多评论
  

# re: [原创]报表导出组件,轻松配置,一键将web表格导出为doc、xls、pdf、jpg 2010-08-12 12:53 雪山飞鹄
@小牧
以上问题均正确,目前还在修正中。现阶段只是简易功能。  回复  更多评论
  

# re: [原创]报表导出组件,轻松配置,一键将web表格导出为doc、xls、pdf、jpg 2012-11-05 10:36 afy
非常好的东西。严重赞一个,也希望修复后的资源能够再次发表出来。  回复  更多评论
  

# re: [原创]报表导出组件,轻松配置,一键将web表格导出为doc、xls、pdf、jpg 2013-07-25 13:43 cdr
楼主的能力毋庸置疑,楼主的精神更是难能可贵,非常感谢!~~  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: