论文部分内容阅读
摘要:利用Java平台开发文档共享系统,整合教学资源,运用Hibernate技术实现数据的存取,采用的成熟的SSH框架组织后台业务处理,使用AJAX技术实现无刷新更新,增加用户体验,提高访问速度。支持Word、Excel、PDF以及PPT等格式的文档浏览阅读。支持用户更好更快的上传和下载文档,实现资源共享。
关键词:文档共享;文档转码;Ajax
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)09-2105-04
1 概述
随着互联网信息交流和资源共享的发展,文档作为传递信息的载体,扮演着越来越重要的角色。许多大学存在着网络信息资源平台缺乏统一管理、没有交互性和统一共享性、访问瓶颈时有发生等问题[1],通过校园文档共享平台,同学们能够上传、管理相关类型的文档,同时也可以搜索下载自己需要的文档,并且通过积分机制有效地限制了只下载不付出的同学的下载量。解决了下载文档资料问题的同时,又有效地加快了信息资源交流的速度,以便同学们更好地学习。
2 技术介绍
2.1 Ajax技术
Ajax即“Asynchronous JavaScript and XML”(异步JavaScript和XML)[2],它是一种用于创建更好更快以及交互性更强的Web应用程序的技术。JavaScript通过该技术可使用XMLHttpRequest对象来直接与服务器进行通信,可在不重载页面的情况与Web服务器交换数据,AJAX在浏览器与Web服务器之间使用异步数据传输(HTTP请求),这样就可使网页从服务器请求少量的信息,而不是整个页面,可使因特网应用程序更小、更快、更友好[3]。其优点可以归结为:
1)不必更新全部网页,可更新部分页面。
2)优化了Browser和Server之间的沟通,减少不必要的数据传输、时间及降低网络上数据流量。
3)平衡了前、后端的负载,原本数据大多由后端负责处理,借由AJAX让客户端分担些工作,减低了后端的负载。
本系统对AJAX的使用主要表现是在前台页面上,如会员登录使用AJAX技术验证实现无刷新登录,增加用户的体验。
2.2 文档转码技术
由于文档共享平台实现了文档的在线浏览功能,会员可以对文档内容进行在线浏览,并且可以根据自己的喜好对字体进行放缩、以及跳页等功能,所以必须以Flash流媒体的形式呈现在前台页面,这时就需要对文档进行转码操作。其转码原理为,通过FlashPaper2对文档格式的文件进行转码,取文档的每一页作为一帧组成Flash文件[4],其转码流程如图1所示。
3 需求分析
系统的使用者主要有三类人,即游客、会员和管理员。各种用户的功能如下:
3.1 游客功能
游客在访问系统主页后,对系统的使用主要包括搜索文档、浏览文档、查看网站基本信息和注册会员等功能。
1)搜索文档。游客访问网站后,可以通过关键词来搜索自己需要的文档信息。
2)浏览文档。找到自己需要的文档信息后,可以在线对文档进行浏览查看。
3)查看网站基本信息。访问主页后,通过超连接查看网站提供的基本信息。
4)注册会员。游客输入注册信息,通过验证后可以成为本系统的普通会员。
3.2 会员功能
会员在访问系统主页后,对系统的使用主要包括上传文档、下载文档、评论文档、搜索文档、浏览文档、查看网站基本信息、查看和修改个人基本信息等功能。
1)搜索文档。会员访问网站后,通过填写所需文档的信息,搜索文档。
2)浏览文档。搜索到自己需要的文档信息后,可在线对文档进行浏览查看。
3)查看网站基本信息。访问主页后,可以查看网站提供的基本信息。
4)上传文档。会员可以上传自己的文档供其他会员下载,并获得相应的积分。
5)下载文档。会员可以搜索别人的文档下载,但需扣除相应的积分。
6)个人信息管理。会员对个人信息进行管理,包括个人信息的查看和修改等。
7)收藏文档。会员可收藏别人的文档,以便下一次登录后快速找到文档。
3.3 管理员功能
相比游客和会员用户,管理员使用本系统的频率要更高,管理员在登录系统后台管理页面后,对系统的使用主要包括文档管理文档管理、公告管理、文档审核、会员管理和数据库管理等功能。
1)文档管理。管理员可对数据库文档记录进行管理,包括文档的搜索、删除和修改操作。
2)公告管理。管理员可对公告进行管理,包括对公告的添删改操作。
3)文档审核。对于会员上传上来的文档,必须进过管理员的审核通过后才能在前台显示,对文档的审核包括文档的转码操作。
4)会员管理。管理员可以对系统会员进行管理,包括对会员的添加、搜索、修改和删除操作。
5)数据库管理。为了系统数据的安全,管理员可以每隔一段时间对系统的数据库进行一下备份,当系统数据出现故障后可以进行数据还原操作。
4 系统主要功能设计
4.1 系统整体架构设计
本系统严格遵循B/S模式的三层结构的设计理念,设计过程中首先将系统划分为相对简单的小模块,然后各个模块之间只能通过接口进行传递消息,底层的实现过程对上层是透明的[5-6]。本系统设计为前台显示层(View)、业务处理层(Action)和数据访问层(DAO)三层,前台通过发送请求request并且将请求参数进行封装发送到业务处理层,由相应的Action类进行处理,然后通过DAO层访问数据库,获得相应的数据信息,通过List返回到Action层,再根据显示的需要,通过List发送到前台显示给用户。
关键词:文档共享;文档转码;Ajax
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)09-2105-04
1 概述
随着互联网信息交流和资源共享的发展,文档作为传递信息的载体,扮演着越来越重要的角色。许多大学存在着网络信息资源平台缺乏统一管理、没有交互性和统一共享性、访问瓶颈时有发生等问题[1],通过校园文档共享平台,同学们能够上传、管理相关类型的文档,同时也可以搜索下载自己需要的文档,并且通过积分机制有效地限制了只下载不付出的同学的下载量。解决了下载文档资料问题的同时,又有效地加快了信息资源交流的速度,以便同学们更好地学习。
2 技术介绍
2.1 Ajax技术
Ajax即“Asynchronous JavaScript and XML”(异步JavaScript和XML)[2],它是一种用于创建更好更快以及交互性更强的Web应用程序的技术。JavaScript通过该技术可使用XMLHttpRequest对象来直接与服务器进行通信,可在不重载页面的情况与Web服务器交换数据,AJAX在浏览器与Web服务器之间使用异步数据传输(HTTP请求),这样就可使网页从服务器请求少量的信息,而不是整个页面,可使因特网应用程序更小、更快、更友好[3]。其优点可以归结为:
1)不必更新全部网页,可更新部分页面。
2)优化了Browser和Server之间的沟通,减少不必要的数据传输、时间及降低网络上数据流量。
3)平衡了前、后端的负载,原本数据大多由后端负责处理,借由AJAX让客户端分担些工作,减低了后端的负载。
本系统对AJAX的使用主要表现是在前台页面上,如会员登录使用AJAX技术验证实现无刷新登录,增加用户的体验。
2.2 文档转码技术
由于文档共享平台实现了文档的在线浏览功能,会员可以对文档内容进行在线浏览,并且可以根据自己的喜好对字体进行放缩、以及跳页等功能,所以必须以Flash流媒体的形式呈现在前台页面,这时就需要对文档进行转码操作。其转码原理为,通过FlashPaper2对文档格式的文件进行转码,取文档的每一页作为一帧组成Flash文件[4],其转码流程如图1所示。
3 需求分析
系统的使用者主要有三类人,即游客、会员和管理员。各种用户的功能如下:
3.1 游客功能
游客在访问系统主页后,对系统的使用主要包括搜索文档、浏览文档、查看网站基本信息和注册会员等功能。
1)搜索文档。游客访问网站后,可以通过关键词来搜索自己需要的文档信息。
2)浏览文档。找到自己需要的文档信息后,可以在线对文档进行浏览查看。
3)查看网站基本信息。访问主页后,通过超连接查看网站提供的基本信息。
4)注册会员。游客输入注册信息,通过验证后可以成为本系统的普通会员。
3.2 会员功能
会员在访问系统主页后,对系统的使用主要包括上传文档、下载文档、评论文档、搜索文档、浏览文档、查看网站基本信息、查看和修改个人基本信息等功能。
1)搜索文档。会员访问网站后,通过填写所需文档的信息,搜索文档。
2)浏览文档。搜索到自己需要的文档信息后,可在线对文档进行浏览查看。
3)查看网站基本信息。访问主页后,可以查看网站提供的基本信息。
4)上传文档。会员可以上传自己的文档供其他会员下载,并获得相应的积分。
5)下载文档。会员可以搜索别人的文档下载,但需扣除相应的积分。
6)个人信息管理。会员对个人信息进行管理,包括个人信息的查看和修改等。
7)收藏文档。会员可收藏别人的文档,以便下一次登录后快速找到文档。
3.3 管理员功能
相比游客和会员用户,管理员使用本系统的频率要更高,管理员在登录系统后台管理页面后,对系统的使用主要包括文档管理文档管理、公告管理、文档审核、会员管理和数据库管理等功能。
1)文档管理。管理员可对数据库文档记录进行管理,包括文档的搜索、删除和修改操作。
2)公告管理。管理员可对公告进行管理,包括对公告的添删改操作。
3)文档审核。对于会员上传上来的文档,必须进过管理员的审核通过后才能在前台显示,对文档的审核包括文档的转码操作。
4)会员管理。管理员可以对系统会员进行管理,包括对会员的添加、搜索、修改和删除操作。
5)数据库管理。为了系统数据的安全,管理员可以每隔一段时间对系统的数据库进行一下备份,当系统数据出现故障后可以进行数据还原操作。
4 系统主要功能设计
4.1 系统整体架构设计
本系统严格遵循B/S模式的三层结构的设计理念,设计过程中首先将系统划分为相对简单的小模块,然后各个模块之间只能通过接口进行传递消息,底层的实现过程对上层是透明的[5-6]。本系统设计为前台显示层(View)、业务处理层(Action)和数据访问层(DAO)三层,前台通过发送请求request并且将请求参数进行封装发送到业务处理层,由相应的Action类进行处理,然后通过DAO层访问数据库,获得相应的数据信息,通过List返回到Action层,再根据显示的需要,通过List发送到前台显示给用户。