基于WEB的文档管理系统的设计及实现毕业论文.docx
- 文档编号:13534548
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:34
- 大小:527.78KB
基于WEB的文档管理系统的设计及实现毕业论文.docx
《基于WEB的文档管理系统的设计及实现毕业论文.docx》由会员分享,可在线阅读,更多相关《基于WEB的文档管理系统的设计及实现毕业论文.docx(34页珍藏版)》请在冰点文库上搜索。
基于WEB的文档管理系统的设计及实现毕业论文
湖南科技大学
毕业设计(论文)
题目基于WEB的文档管理系统的设计及实现
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:
所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:
日 期:
指导教师签名:
日 期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:
按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:
日 期:
学位论文原创性声明
本人郑重声明:
所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:
日期:
年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:
日期:
年月日
导师签名:
日期:
年月日
湖南科技大学成人高等教育
本科生毕业论文(设计)评审表
姓名
性别
女
学号
系别
所学专业
计算机与科学技术
指导导师
答辩(或完成)日期
年月日
论文题目
基于WEB的文档管理系统的设计及实现
[摘要]
本文论述了一个基于J2EE平台,三层架构的(B/S)的网络文档管理系统的设计及其实现全过程,并对实现过程中的关键问题作了具体的分析和剖析。
本系统的设计采用了SUN公司的java技术,以开源开发工具Eclipse3.1作为开发工具,MicrosoftVisio2003和MicrosoftVisualSourceSafe作为项目管理与辅助设计工具,Oracle9i作为数据库支撑平台。
应用面向对象、三层架构、软件工程思想,本文实现了基于web的文档管理系统,它包括管理员的权限管理、文档管理、文件夹管理、用户管理、密码管理和一般用户对文档的查询查看管理等子系统。
系统的设计与实现,严格遵循软件工程思想,进行了细致的需求和系统分析工作。
毕
业
论
文
评
语
建议评定等级:
指导教师签字:
年月日
评
阅
老
师
意
见
毕业论文成绩:
签字:
年月日
教
学
院
意
见
注:
此表一式二份,与学籍表一起装入学员毕业档案湖南科技大学成人教育学院制
摘 要
本文论述了一个基于J2EE平台,三层架构的(B/S)的网络文档管理系统的设计及其实现全过程,并对实现过程中的关键问题作了具体的分析和剖析。
本系统的设计采用了SUN公司的java技术,以开源开发工具Eclipse3.1作为开发工具,MicrosoftVisio2003和MicrosoftVisualSourceSafe作为项目管理与辅助设计工具,Oracle9i作为数据库支撑平台。
应用面向对象、三层架构、软件工程思想,本文实现了基于web的文档管理系统,它包括管理员的权限管理、文档管理、文件夹管理、用户管理、密码管理和一般用户对文档的查询查看管理等子系统。
系统的设计与实现,严格遵循软件工程思想,进行了细致的需求和系统分析工作。
【关键词】:
B/S;J2EE;三层架构;文档管理;权限管理
目 录
第1章现状分析及工具简介
1.1系统背景分析
随着时间的推移、企业信息化水平的提高,企业日常产生了大量各种格式的文档,如何有效地管理这些文档,一直是企业(特别是项目经理)特别头痛的问题之一。
企业对文档的管理方式一般有如下两种常见的方式:
1)用户将文档存放在自己的电脑中,通过邮件的形式或其它形式(如QQ,MSN,飞鸽等)分发给相关人员阅读。
2)将文档存放在服务器,通过一些文档专门的文档管理软件,如cvs,MicrosoftVisualSourceSafe等。
前者,由用户自己管理自己的文档,对自己的文档负责。
这样的优点是用户可以方便的浏览自己管理的文档,同时文档管理的责任比较明确,即使泄密范围也不大。
但是,以这种方式管理的文档,存在有如下缺点:
●当需要在多个人中共享某文档时,就产生了信息冗余,当文档发布新版本时,需要对所有相关人员发送新版本,往往产生版本不同步的情况。
况且,在人力成本日益高涨的今天,管理成本还是比较高的。
●所有用户的文档相互隔离,形成了一个一个的信息孤岛,每个人很难知道其它用户已经存在了那些文档,自然也很难分享凝聚了他人智慧的文档。
虽然,也可以通过操作系统的文件夹共享实现文档的共享,但是此时文档的搜索成本还是很高的。
为了解决这个问题,人们开发了一系列的文档管理的专用软件。
后者,不管是付费软件还是免费软件,往往满足了用户某个方面或某几个方面的需求。
比如,cvs专注于项目组中文档的版本管理,可以保存各个文档的所有历史版本,并且可以方便的对任意两个版本比较其异同。
同时,也可以对每个用户设置其访问权限。
当然,缺点也是很明显的:
●如果不能用搜索的方式找到含有某关键词的资料;
●软件不能随需而变。
由于是专有软件,不能对它进行二次开发,加入新功能或修改原有功能,新的需求必须等待其新版本的发布。
以上通常的文档管理方式在文档规模不大时,一般不会产生什么问题,甚至很方便。
但是当文档的规模较大、涉及人员较多,如何使相关人员很好的管理其文档(适当的人以适当的方式管理适当的文档)是一个不小的挑战。
现代社会的主要特征是“变”,资料管理也应该随需而变。
它需要软件的架构是开放的,即用户能够以某种自定义的方式上传文档、描述文档、管理文档。
基于WEB的文档管理系统可以解决以上的问题。
1.2系统开发平台
系统开发平台见表1-1。
表1-1系统开发平台
网络及硬件平台
CPU
IntelPentiumIII700MHzorHigher
内存
512MBorHigher
硬盘空间
40GBorHigher
网络接入
10MB/sorHigher
操作系统平台
Windows2000Server
Windows2000AdvanceServer
WindowsServer2003EnterpriseEdition
WindowsNTServer/Workstation
开发工具平台
MyEclipseJ2EEDeveloper
数据库平台
Oracle9i
其它支撑平台
Resion3
辅助开发平台
MicrosoftVisio2003,MicrosoftVisualSourceSafe等
1.3系统开发相关技术
1.3.1J2EE简介
J2EE为开发复杂的、分布式企业级Java应用定义了一套体系结构。
最初由SumMicrosystems在1999年中期发布,其各个版本存在的重大改变在于企业级的JavaBean(EJB)方面。
它由以下五部分组成:
●使用J2EE开发企业级应用的设计指南;
●提供J2EE可操作视图的一个参考工具;
●可由第3方使用的兼容性能测试组件,以检验他们的产品与J2EE的兼容性问题;
●多种应用编程接口(API),使人们能对企业资源进行通用访问;
●简化企业级Java开发技术
它们之间的关系如下图1.1:
图1.1J2EE各组成部分的关系
该平台是建立在Java”一次编写,随意运行”的理念上的。
它通过一组技术和一套API实现,它们由参考工具、实际指南和兼容组件支持和限定。
1.3.2MVC模式
设计模式是面向对象的程序设计人员用来解决编程问题的一种形式化表示。
目前,在大多数Browser/Server结构的Web应用中,浏览器直接通过HTML或者JSP的形式与用户交互,响应用户的请求。
虽然很直观,但是大多数管理信息系统操作的数据量都是惊人的,随着代码的增多会使JSP页面臃肿不堪,Web服务器的负荷过重。
因此,在中间层上采用基于模型-视图-控制器(MVC,即Model-View-Controller)的设计模式。
Model层用来实现业务逻辑,View层用来显示用户界面,Controller层主要负责View层和Model层之间的控制关系。
具体实现时,把Servlet用作应用程序的控制器,把JSP文档作为视图,JavaBeans被用来表示模型。
所有的请求都被发送给作为控制器的Servlet,它接受请求,并根据请求信息将它们分发给适当的JSP来响应。
同时,Servlet还根据JSP的需求生成JavaBeans的实例并输出给JSP环境。
JSP可以通过直接调用方法或使用UseBean的自定义标签得到JavaBeans中的数据。
这种设计模式很好地实现了数据层与表示层的分离,使开发工作更加容易和迅速。
在这种设计模式下,各层次之间的数据传递如图图1.2。
Mt图1.2MVC模式的数据传递图
第2章需求分析
2.1运行环境需求
系统运行环境需求见表2-1。
表2-1运行环境需求信息表
服务器
网络及硬件平台
CPU
IntelPentiumIII700MHzorHigher
内存
512MBorHigher
硬盘空间
40GBorHigher
网络接入
10MB/sorHigher
操作系统平台
Windows2000Server
Windows2000AdvanceServer
WindowsServer2003EnterpriseEdtion
WindowsNTServer/Workstation
数据库平台
Oracle9i
其它支撑平台
resin-3.0.22
客户端
网络及硬件平台
CPU
IntelPentiumIII300MHzorHigher
内存
128MBorHigher
硬盘空间
10GBorHigher
网络接入
10MB/sorHigher
操作系统平台
WindowsXPprofessional
WindowsServer2003EnterpriseEdition
其它支撑平台
IE6.0,Netscapeetc.
2.2功能需求
本系统的用户分两类:
管理员用户和一般用户。
他们用统一的登陆界面(见图2.1)。
登陆成功后,依据不同的用户类型进入不同的界面:
一般用户进入资料查询和浏览界面(见图2.2),管理员用户进入权限管理界面(见图2.3)。
图2.1用户登陆界面
图2.2一般用户界面
图2.3管理员用户界面
⏹权限管理模块
此模块操作权限属于管理员用户,功能包括:
对一般用户文档操作权限的查询、授权或取消授权。
图2.4一般用户的权限查询和授权界面
⏹文档管理模块
此模块操作权限属于管理员用户,功能包括:
资料文档信息的查询、查看、上传、增加、锁定和解除锁定。
文档一经锁定,一般用户不能查看此文档信息。
图2.5文档管理界面
图2.6文档信息查看界面
图2.7文档锁定后的出错界面
⏹文件目录的管理
此模块操作权限属于管理员用户,功能包括:
文件目录的增加和删除。
文件目录以树形展开,以便于查看。
图2.8文件夹的删除界面
图2.9文件夹的增加界面
⏹用户管理模块
此模块操作权限属于管理员用户,功能包括:
对用户的查询、增加、冻结、升级或降级。
用户查询:
输入需要查询的用户id或者昵称,可以查看满足此条件的记录集合。
用户的冻结:
选择需要冻结的用户记录,点击列表中的“冻结”按钮,则可冻结此用户,此时用户的状态为“冻结”。
冻结的用户不能登陆。
用户的状态改变:
选择需要升为管理员的用户,点击列表中的“升为管理员”链接,可以将该用户升为管理员。
用户的增加:
输入一个用户的“昵称”可以增加一个用户。
此时用户有缺省密码000000,没有权限(只拥有修改密码的权限),需要对该用户授权。
⏹密码修改模块
此模块操作权限属于管理员用户和一般用户,功能包括:
用户修改自己的密码。
此时需要输入原密码,修改后的新密码,并重复输入一次,当原密码符合、新输入的密码一致时,才能修改成功。
图2.10用户密码修改界面
⏹密码修改模块
一般用户登陆成果后进入如下图所示的界面。
前面显示的是该用户拥有查看权限的文件夹列表,最后一个功能是修改密码。
图2.11一般用户的界面
如果选择一个文件夹,则显示这个文件夹下的文档列表,此时可以通过点击标题栏目的链接,可以查看此文档的内容。
2.3系统结构选型
三层架构
整个管理信息系统采用Browser/Web/DataBase的三层体系结构。
Web服务器接受请求,通过应用程序服务器执行一个Java服务器端小程序Servlet并返回其输出,从而实现与客户机进行信息资源的交互。
数据库服务器用来存储管理信息系统中所用到的各种数据,数据由数据库管理程序直接录入。
系统的客户端只需要一个浏览器即可。
相关人员通过浏览器来查询、增加、修改、删除数据,对信息进行管理。
图2.12基于Java技术的Web应用三层体系结构
第3章系统的设计与实现
3.1概要设计
系统的概要设计是要根据系统分析的要求和组织的实际情况来对新系统的总体结构形式和可利用的资源进行大致设计。
这是一种宏观、总体上的设计和规划。
根据系统需求分析,系统划分功能模块如下:
用户登录模块
☞用户登录等;
权限管理模块
☞用户权限的查询:
依据用户昵称查询用户操作文件和文件夹的权限等;
☞用户权限的授权:
依据用户昵称对用户操作文件夹的权限进行授权等。
文档管理模块
☞文档的查询:
依据文档的标题和摘要信息对文档进行模糊查询等;
☞文档查看:
浏览文档相关信息等。
☞文档的操作:
包括文档的锁定和解除锁定等;
☞文档的上传:
包括文档附件的上传等;
☞文档的增加:
包括文档记录信息的添加等。
文件夹管理模块
☞文件夹的添加:
包括文件夹信息的添加等;
☞文件夹的删除:
包括文件夹信息的删除等。
用户管理模块
☞用户的查询:
包括依据用户id和昵称模糊查询等;
☞用户的冻结:
包括用户的冻结和解除冻结等;
☞用户状态的改变:
用户升为管理员或者降为一般用户;
☞用户的增加:
添加一条用户信息。
密码修改模块
☞用户修改密码。
总体而言,基于权限的文档管理系统的设计思想是将人员和文档信息存于数据库,通过授权联系用户和文档,从而达到有效管理文档和用户的目的。
系统的结构图如下
图3.1系统的结构图
从上面的系统结构图可以看出,系统用户有两类:
管理员用户和一般用户。
他们通过统一的登陆界面,登陆成功后,根据用户的类型不同进入不同的界面。
管理员拥有用户操作、文档操作、文档授权等权限;一般用户有文档查询、查看等权限。
他们通过统一的数据管理层与数据库交互,从而屏蔽了数据库的异构性和操作的复杂性。
3.2详细设计与实现
3.2.1登陆模块的设计与实现
用户登录模块完成的功能包括用户身份的验证、相应权限的确立、及用户信息的记录。
用户登录成功后,通过user_id记录用户编号,并根据员工编号检索权限表,根据权限表(t_power)所具有权限呈现用户界面,对用户的操作进行管理。
同时记录用户登录日志。
为了保证用户帐号信息的机密性,我们对用户的密码进行了MD5加密。
用户登录的具体业务流程如图(图3.2)所示:
图3.2系统登录流程图
3.2.2文档管理模块的设计与实现
文档管理模块功能包括:
文档的查询、文档的查看、文档的锁定和恢复、文档的上传、文档记录的增加等处理。
文档管理模块数据流程如图3.3所示:
图3.3文档管理模块数据流程图
功能分解及实现方法
此部分完成文档信息的查询、查看、锁定/恢复、上传和增加等功能。
在文档信息录入与修改过程中,为了保证输入信息的正确性及有效性,我们对输入的信息进行验证,只有通过验证的信息才会写入数据库,否则,提示用户信息无效,要求用户重新录入。
需要验证的信息包括:
文档标题和文档摘要等。
在提交之前,对于用户录入的数据,为防止出现危险代码,我们先对数据进行转码,再存入数据库中。
当取出数据时,根据将取出数据放在何处来判断是否将其解码。
备注:
此处增加文档的摘要信息是为了让用户自定义文档的字典信息,从而方便搜索。
文档对应的类图如下图图3.4所示:
图3.4文档对应的类图
Document类:
总体说明:
用来在系统中模拟文档的行为;
属性说明:
Doc_id:
文档编号;
Doc_class:
文档所属类别编号;
Doc_title:
文档标题;
Creator_id:
创建人编号;
Doc_url:
文档链接;
Add_time:
文档增加或修改时间;
Click_count:
文档的点击数量;
Doc_summary:
文档的摘要信息;
Doc_state:
文档的状态;
操作说明:
insert:
插入文档信息记录;
query:
查询文档信息记录;
view:
查看文档信息记录;
lock:
锁定文档;
unlock:
解除锁定文档;
upload:
上传文档信息。
3.2.3文件夹管理模块的设计与实现
文件夹管理模块功能包括:
文件夹的删除和增加等处理。
文档管理模块数据流程如图3.5所示:
图3.5文档管理模块数据流程图
功能分解及实现方法
此部分完成文件夹的删除和增加等功能。
在文档信息录入与修改过程中,为了保证输入信息的正确性及有效性,我们对输入的信息进行验证,只有通过验证的信息才会写入数据库,否则,提示用户信息无效,要求用户重新录入。
需要验证的信息包括:
文件夹的标题。
备注:
文档对应的类图如下图所示:
图3.6文件夹对应的类图
Folder类:
总体说明:
用来在系统中模拟文件夹的行为;
属性说明:
Class_id:
文件夹编号;
Class_name:
文件夹名称;
Father_id:
父文件夹的编号;
操作说明:
insert:
插入文件夹信息记录;
delete:
删除文件夹记录;
3.2.4用户管理模块的设计与实现
文件夹管理模块功能包括:
对用户的查询、增加、冻结、升级或降级等处理。
文档管理模块数据流程如图3.7所示:
图3.7文档管理模块数据流程图
功能分解及实现方法
此部分完成对用户的查询、增加、冻结、升级或降级等功能。
在文档信息录入与修改过程中,为了保证输入信息的正确性及有效性,我们对输入的信息进行验证,只有通过验证的信息才会写入数据库,否则,提示用户信息无效,要求用户重新录入。
需要验证的信息包括:
用户的昵称。
备注:
文档对应的类图如下图所示:
图3.8用户对应的类图
User类:
总体说明:
用来在系统中模拟用户的行为;
属性说明:
user_id:
用户编号;
user_name:
用户名称;
user_password:
用户密码;
last_login_ip:
用户最后登陆IP;
lost_login_time:
用户最后登陆时间;
user_state:
用户的状态;
操作说明:
insert:
插入用户信息记录;
query:
查询用户信息记录;
lock:
锁定用户;
unlock:
解除锁定用户;
login:
用户登陆;
changeState:
改变用户状态;
getPower:
得到用户权限列表;
changePasswrod:
改变用户状态.
3.3系统集成
总体框架窗口设计
整个窗口分为三部分:
topFrame(放置系统标题),leftFrame(放置菜单树),mainframe(放置系统功能页面)。
下面是登录后的主窗口页面截图。
图3.9管理员登录后的主窗口
菜单树的实现及模块集成
菜单树的实现采用登陆成功后查询用户权限列表,用javascript拼成权限树。
这样有两个优点:
⏹全动态的系统菜单管理;
⏹易于复用,实现简单,加载效率高。
应用到的文件包括topFrame.jsp,AdminTreeBase.js,leftTreeBase.js,而AdminTreeBase.js包含了输出树型目录所用到的所有javascript方法。
第4章系统测试
4.1测试计划
系统的测试是为了对系统的质量或可接受程度作出判断,以及发现问题。
测试的过程可以细分为几个独立的步骤:
测试计划、测试用来开发、运行测试用例以及评估测试结果。
基于WEB系统的测试除具有适应软件工程的测试方法外,还具有其特殊性。
B/S结构系统的测试包括功能测试、性能测试、可用性测试、客户端浏览器兼容性测试以及安全性测试五个部分。
其中各个部分均有自详细的测试内容及测试角度。
4.1.1功能测试
1、链接测试
链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。
链接测试可分为三个方面:
链接是否正确、链接的页面是否存在、没有孤立的页面。
链接测试可以自动进行,现在已经有许多工具可以采用,它在集成测试阶段完成。
测试结果:
本系统的几乎所有的页面链接都经过测试,结果正确无误。
2、表单测试
当用户给Web应用系统提交信息时,就需要使用表单操作,必须测试其提交操作的完整性及正确性。
如果表单只能接受指定的某些值,则也要进行边界测试。
例如:
只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。
测试结果:
本系统的所有的表单都经过测试,经过一定的输入字符操作,结果正确无误。
3、Session测试
Session通常用来在服务器端存储的一段用户信息。
Session测试的内容可包括Session是否起作用、Session否按既定的时间内保存、Session的刷新等。
测试结果:
本系统的用户登陆Session测试无误。
4、数据库测试
在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统中的数据存储的请求等提供空间。
在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。
数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 WEB 文档 管理 系统 设计 实现 毕业论文