本科毕业设计 基于web的动态表格_第1页
本科毕业设计 基于web的动态表格_第2页
本科毕业设计 基于web的动态表格_第3页
本科毕业设计 基于web的动态表格_第4页
本科毕业设计 基于web的动态表格_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要摘要近几年,随着因特网技术的迅猛发展,全球信息化的脚步也在不断的加快。web应用变得越来越普遍的同时也越来越复杂,基于web的动态表格就是一个典型的实例,不论是企业系统,还是高校教务系统,都有这类功能需求。 本文就是基于上述需求,利用 Apache 公司提出的一个发展比较成熟的 POI软件包中的 HSSF 接口探索出一条解决 Java 语言操作微软公司 Excel 文件的有效途径。作者在参阅大量资料的基础上,首先介绍了本文案例中需要用到的基于B/S 文件上传与下载的方法,然后提出了操作 Excel 文件的几种方法并做了比较,最后对 Excel 文件格式进行了分析并且对 POI 软件包中的 HSSF 接口进行了较深入的研究。在掌握了相关技术知识的前提下,设计并且完成了基于 B/S 的 Excel数据输入与输出案例,达到了预期的效果。关键字:web 应用 POI 软件包 HSSF API Excel 文件ABSTRACTABSTRACTIn recent years, with the rapid development of Internet technology, global information has also been accelerated pace. Web applications become more popular and more complicated. Web-based dynamic form is a typical example of it. Not only an enterprise system but also a university academic system needs it.This thesis is just to meet that requirement and find a solution to operate Excel document by Java Language with Apache POI HSSF API.After reading a large amount of data,The author first introduced file upload and download methods based on B/S. Then proposed several methods of operating Excel files and compared each method, at last the Excel file format is analyzed and had a depth research on the POI HSSF API.After grasped the related knowledge,the author designed a case called the data of Excel input and output based on B/S.The result is satisfactory Keywords: web application POI HSSF API Excel file 目录 i目 录第一章 绪论 .11.1 课题的背景及意义 .11.2 课题来源及主要研究内容 .11.3 国内外研究发展动态 .21.4 本文结构安排 .3第二章 基于 B/S 实现文件上传与下载 .52.1 实现文件上传的方法 .52.1.1 JspSmartUpload 组件实现 .52.1.2 Common-FileUpload 组件实现 .72.1.3 MultipanRequest 组件实现 .82.1.4 基于 Java 流的无组件上传 .92.2 实现文件下载的方法 .102.2.1 直接采用超链接方法 .102.2.2 RequestDispatcher 方式实现下载 .102.2.3 文件输出流方法实现下载 .112.3 本章小结 .13第三章 Excel 文件的生成与读取 .153.1 操作 Excel 文件的方法 .153.2 POI 项目安装 .183.3 POI HSSF API 介绍 .193.3.1 Excel 文件结构简介 .193.3.2 POI HSSF API 介绍 .203.4 本章小结 .22第四章 基于 B/S 的 Excel 数据输入与输出实现 .234.1 功能需求分析 .234.2 开发平台的搭建及环境设置 .234.2.1 开发平台搭建 .234.2.2 开发工具的选择 .24ii 目录4.2.3 开发环境设置 .244.3 模块设计与实现 .244.3.1 系统结构 .244.3.2 关键类结构 .254.3.3 时序结构 .304.3.4 系统应用示例及运行界面 .324.4 本章小结 .33第五章 总结与展望 .355.1 论文工作总结 .355.2 技术展望 .36致谢 .37参考文献 .39第一章绪论 1第一章 绪论1.1 课题的背景及意义二十一世纪以来,随着因特网技术的迅猛发展,全球信息化的脚步也在不断的加快。经过了初期阶段的摸索和学习,企业已经充分的认识到只有提高自身的信息化程度,才能在竞争的大潮中位于不败之地。因此,如何迅速高效的利用新技术为企业服务,已成为企业高层制定未来战略决策的重要因素之一。Sun公司在1999 年推出的J2EE(Java2 Platform Enterprise Edition)框架模型,凭借着传统应用系统模型不可比拟的优势在短期间内迅速成为面向企业web应用系统开发的主流体系结构之一。它具体的优势表现如下:1.完全继承了Java语言的特性,体现了面向对象的编程思想,低耦合、易维护。2.能够开发部署在异构环境中的可移植程序,不依赖操作系统、中间件、硬件。3.稳定的可用性和较强的伸缩性。虽然J2EE已经近乎完美,但随着企业级应用的进一步深入,网上查看和下载电子表格已经成为日常办公中获取统计数据的重要手段,很多的web系统中都会遇到这个问题。例如:在高校教务处系统中,教师通过上传一个成绩单表格文件将学生成绩输入到数据库中;企业系统中,需要打印某个月或某个季度的财务报表;网上银行需要为用户提供显示交易明细账单并且供用户下载保存的功能,等等。相对于其他类型的电子表格,微软公司的Excel 拥有广泛的用户群,如果把报表输出成Excel格式,用户就可以利用 Excel强大的功能对报表进行再编辑,或者是打印,来满足自己特殊的需求。但是长期以来,Java程序由于其跨平台特性,不能直接操作Excel,因此,本课题就是来探索出一种解决J2EE框架下运用Java编程语言操作Excel文档的有效途径,一方面体现了 J2EE的优势另一方面也满足了用户对微软Excel的依赖,这将对企业中信息化建设有不小的帮助,故本课题的研究是十分有意义的。1.2 课题来源及主要研究内容如今,信息系统已经逐渐从C/S模式转变为B/S 模式,由于B/S 模式的客户端一般是浏览器,报表下载打印功能比较弱,在C/S下相对较易实现的报表打印功能在B/S 下却成为一个难点。众所周知,时至今日微软公司并没有对外公开Excel文件的储存格式,这使得J2EE框架模型在解决企业级应用时无法像读取一般文本2 基于 B/S 的 Excel 输入与输出实现文件那样来读取Excel文件,但是,仅仅因为这个原因就放弃使用J2EE这个有前途的、开放式的框架模型并不是我们所愿意的!本课题探索出一个间接的方式来实现这一目标,研究了如何使用Apache POI软件包实现基于 B/S的Excel 数据输入与输出。1.3 国内外研究发展动态就目前而言,对 Java 语言操作 Excel 文件这项技术的研究在国内相对较少,而在国外则较活跃,无论是个人发起的民间组织还是知名公司(如:Apache)都纷纷给出了不同的解决方案,并且将阶段性成果公开供用户和研究者使用、验证。但总体来说,该项目的研究水平还不够成熟,每一种技术都只是在一方面突出,并没有达到完美。因此,我们应该进一步分析这些技术,寻求一种更为理想的解决方案。下面给出了 Java 语言操作 Excel 文件的四种可实施方案:1、JCom 1JCom(Java-ComBridge ) ,即 Java/COM 桥,它是一种用软件实现的桥接机制,这个开源项目始于 2000 年,目前还处在一个较低级的水平。JCom 可以帮助Java 应用程序快速访问微软的 COM/DCOM 组件。而且,微软的 COM 应用程序也可以通过这个机制访问基于 Java 的对象。JCom 不仅简单,它最吸引人的部分在于它的透明性。对 Java 程序员来说,COM 对象看起来与其他 Java 对象没有什么不同,而对 COM 开发人员来说,远程 Java 对象看起来就像是本机 COM 组件。在这些对象中可以找到 JCom 运行时刻引擎进行动态类型映射,因此从表面上屏蔽了数据类型间的差异。2、Jacob 2Jacob(Java-ComBridge) ,是一个 Java 和 COM 之间的桥接口,它使用 JNI技术来实现 Java 程序对 COM 组件对象接口和 Win32 类库的本地调用,有很多使用者对该项目进行了修改,做出了贡献。这个开源项目始于 1999 年,就目前的研究进度来讲,该项目处理 MS Word 文件较成功,而处理 MS Excel 文件较欠缺。3、Jxl API3Jxl API(java Excel API)是由一个韩国程序员开发的开源项目(从名字就可以看出来它是针对 Excel 操作的) ,是 Java 语言操作 Excel 文件的工具类库,它除第一章绪论 3了对中文和图片插入支持较好之外,还有以下的特点: 支持 Excel 95-2000 的所有版本 生成 Excel-2000 标准格式 支持字体、数字、日期操作 能够修饰单元格的属性诚然,它也有一处明显的不足,就是不支持单元格的合并。4、POI 软件包 4POI(Poor Obfuscation Implementation) ,是由 Apache 公司于 2002 年开始主持开发的一个开源项目,其中的 HSSF(Horrible SpreadSheet Format)接口就是专门用于处理 Excel 文件的,它也是 POI 包含的多个接口中最成熟的部分,通过HSSF 接口我们可以用纯 Java 代码来读取、写入、修改 Excel 文件的内容。此外,前面两种方法有一个共同的缺点就是需要后台有 COM 组件的支持,不得脱离 Windows 平台。就当前使用情况来看,后两种方法普遍流行,它既不依赖平台和后台相应组件的支持,而且容易上手,它将成为 Java 语言处理 Excel 文件的主流趋势。POI 软件包中的 HSSF API 与 Jxl API 相比功能更强大些,在第三章中,将对 POI 软件包做进一步详细的叙述。最后使用该方法实现 Java 语言对Excel 文件的处理。 1.4 本文结构安排本文主要研究 Java 编程语言如何利用 POI 软件包对 Excel 文件进行操作,并设计实现了基于 B/S 的 Excel 输入与输出。此外还对与此相关的内容(JSP 处理文件上传下载,Excel 文件格式等等)做了比较深入的研究,全文共分为五章,如下所示:第一章 绪论:主要介绍了课题的背景及意义、课题来源及主要研究内容和该课题在国内外研究发展动态。第二章 基于 B/S 实现文件上传与下载:主要分析了 JSP 处理文件上传和下载的几种方法及每一种的优缺点。第三章 Excel 文件的生成与读取:主要叙述了实现 Excel 文件生成与读取的方法,并且经过分析和对比选择采用 POI 软件包的方法开发实现第四章的案例。第四章 基于 B/S 的 Excel 数据输入与输出实现:对该案例进行了需求分析并4 基于 B/S 的 Excel 输入与输出实现对每一功能模块的设计和实现做了详细的叙述,最后给出了具体实现的界面。第五章 总结与展望:对论文工作进行总结,并对该技术领域发展给出展望。第二章 基于 B/S 实现文件上传与下载 56 基于 B/S 的 Excel 输入与输出实现第二章 基于 B/S 实现文件上传与下载本章介绍的内容是作为第四章案例实现的前提技术。由于 Java 语言实现对Excel 文件的操作是运行在服务器端的技术,那么就需要用户首先将本地 Excel 文件上传至服务器,后台才能对该 Excel 文件进行一系列操作,最后将服务器生成的 Excel 文件供用户下载保存至本地。2.1 实现文件上传的方法当前,Internet/Intranet的普及使得文件网络传输成为现实。对于任何 web应用系统来说文件上传是一个很有用的功能。例如,在B/S(浏览器/服务器)模式的管理信息系统中使用文件上传,可以存储注册人员的照片和简要情况等信息;在基于web的Email中使用文件上传,可以在邮件中加入附件;在技术支持站点使用文件上传,可以接收从客户端发来的错误日志和缺陷报告文档;在web应用中使用文件上传,还可以通过友好的web界面在用户间共享文件。上传文件与向服务器传递参数类型数据有着很大的不同,一般的参数类型数据 (如:te

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论