网络硬盘管理系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生毕业设计设计题目:网络硬盘管理系统
毕业设计(论文)原创性声明和使用授权说明
原创性声明
本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:
指导教师签名:日期:
使用授权说明
本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:
学位论文原创性声明
本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日
学位论文版权使用授权书
本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日
导师签名:日期:年月日
注意事项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
指导教师评阅书
评阅教师评阅书
教研室(或答辩小组)及教学系意见
毕业设计任务书
专业年级计算机2011 学号学生姓名
任务下达日期:2015年12月19日
毕业设计日期:2015年12月25日至2015年6月7日
毕业设计题目:网络硬盘管理系统
毕业设计专题题目:
毕业设计主要内容和要求:
1.实现用户的注册登录,新用户免费获得一个50MB大小的网络硬盘空间,文件的上传与下载,在线管理已上传的文件,实现文件共享。
2.系统整体采用MVC分层的设计思想,后台使用Java语言开发,数据库使用MySQL数据库,前台页面使用JSP、jQuery、aJax等语言开发。
3.制定开发计划,切实按照开发计划进行系统设计。
4.毕业设计应包括摘要、绪论、开发环境与开发工具的介绍、可行性研究与需求分析、系统总体设计、详细设计、系统测试、总结等。
5.要求论文的参考文献不低于20篇(其中外文参考文献至少5篇),外文翻译的中文部分不少于3000字。
指导教师签字:
郑重声明
本人所呈交的毕业设计,是在导师的指导下,独立进行研究所取得的成果。
所有数据、图片资料真实可靠。
尽我所知,除文中已经注明引用的内容外,本毕业设计的研究成果不包含他人享有著作权的内容。
对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。
本论文属于原创。
本毕业设计的知识产权归属于培养单位。
本人签名:日期:
中国矿业大学徐海学院毕业设计指导教师评阅书
指导教师评语(①基础理论及基本技能的掌握;②独立解决实际问题的能力;③研究内容的理论依据和技术方法;④取得的主要成果及创新点;⑤工作态度及工作量;⑥总体评价及建议成绩;⑦存在问题;⑧是否同意答辩等):
成绩:指导教师签字:
年月日
中国矿业大学徐海学院毕业设计评阅教师评阅书
评阅教师评语(①选题的意义;②基础理论及基本技能的掌握;③综合运用所学知识解决实际问题的能力;③工作量的大小;④取得的主要成果及创新点;⑤写作的规范程度;⑥总体评价及建议成绩;⑦存在问题;⑧是否同意答辩等):
成绩:评阅教师签字:
年月日中国矿业大学徐海学院毕业设计答辩及综合成绩
摘要
在21世纪,随着网络技术的日益普及和信息化建设的重视,人们已经离不开网络了。
网络对人们的影响是巨大的,生活、教育、工作、通信等方方面面都受益于网络的迅速发展。
本论文利用网络的一个优点,对目前的网络硬盘管理系统进行调研,打破了传统网盘在时间、空间上的限制,采用了先进的交流手段和交流方法,为人们提供了免费的网络硬盘服务。
网络硬盘管理系统,依据软件流程规范,是按照概要设计、需求分析、详细设计、编写代码、软件测试、软件维护等过程开发的。
本系统以B/S 模式运行,最大程度上节约了资源,使用MyEclipse作为软件的开发工具,使用目前流行的Java语言与JSP技术、jQuery,并且结合数据库,构建了一个实用而且有效的小型的在线网盘设计平台。
该平台实现用户注册、用户登录、上传下载文件、共享文件、查询文件、文件在线管理等主要功能,实现管理员查看用户的留言信息,管理用户信息等功能,方便用户“携带”自己的文件,方便用户与用户之间“分享”文件。
关键词:网络硬盘管理;MyEclipse;数据库;上传下载文件;文件在线管理
ABSTRACT
In the 21st century, with the increasing popularity of information technology and network technology emphasis, it has been inseparable from the network .Influence of Internet on people is huge,life, education, work, communication and other aspects have benefited from the rapid development of the network.In this thesis, an advantage of the network, the current network hard disk management system for research, breaking the traditional network disk limited in time, space, and the use of advanced communication tools and communication methods, providing people with a free network hard disk service .
Network hard disk management system, based on software process specifications, in accordance with the outline design, requirements analysis, detailed design, coding, software testing, software development and maintenance process.The system operates in B / S mode, the maximum extent to save resources and use MyEclipse as a software development tool, using the popular Java language and JSP technology, jQuery, and binds the database to construct a practical and effective small online network disk design platform.The platform user registration, user login, upload and download files, share files, query files, online management and other major functions, to achieve the administrator to view the user's message, management of user information and other functions,user-friendly "carry" their files to facilitate between users "share" files.
Keywords:Network Disk Management;MyEclipse;Database;Upload and download files;Online file management
目录
1 绪论 (4)
1.1研究目的 (4)
1.2国内现状分析 (4)
1.3 系统实现的功能及意义 (4)
2 相关技术与开发环境 (6)
2.1相关技术简介 (6)
2.1.1 B/S结构简介 (6)
2.1.2 MVC架构设计简介 (6)
2.1.3 Java Web技术介绍 (7)
2.1.4 MySQL简介 (7)
2.2 开发环境概述 (8)
2.2.1 本网站的开发环境 (8)
2.2.2 服务器端 (8)
2.2.3 客户端 (8)
3 可行性研究及需求分析 (9)
3.1 可行性研究 (9)
3.1.1 经济可行性 (9)
3.1.2 技术可行性 (9)
3.1.3 实施可行性 (9)
3.1.4 法律可行性 (10)
3.2 需求分析 (10)
3.2.1 总体需求分析 (10)
3.2.2 功能需求分析 (10)
4 网盘系统设计 (14)
4.1系统设计概述 (14)
4.2系统用例图 (14)
4.3系统结构图 (15)
4.4 系统数据流图 (16)
4.5 数据库设计与实现 (17)
4.5.1数据库模型设计 (17)
4.5.2逻辑模型 (20)
4.6 时序图 (21)
5 网盘系统实现 (23)
5.1网盘系统文件结构 (23)
5.1.1前台主要文件 (23)
5.1.2后台主要文件 (23)
5.1.3 图片文件和CSS文件 (24)
5.2 页面设计 (24)
5.2.1 系统登录页面 (24)
5.2.2 网盘主页面 (26)
5.2.3 用户信息维护页面 (33)
5.2.4 资源共享页面 (37)
5.2.5管理员功能页面 (40)
6 系统部署与测试 (44)
6.1系统测试的定义 (44)
6.2系统测试过程 (44)
6.2.1测试计划 (44)
6.2.2测试用例 (44)
6.2.3测试结果及分析 (47)
总结 (48)
参考文献 (50)
英文原文 (51)
中文译文 (57)
致谢 (63)
1 绪论
1.1 研究目的
当今社会,各行各业的工作都用到了计算机,计算机对办公效率的提高起到了至关重要的作用。
人们可以使用计算机上网、处理文件、储存重要资料,然而日常文件会随着时间累积而增多,这样就产生了一个新的问题,如何对重要资料或者历史文件进行有效的管理,本课题研究的网络硬盘管理系统主要目的就是高效的管理文件资料,让人们摆脱硬盘存储所带来的不便,避免硬盘损坏导致重要资料无法恢复带来的损失。
网络硬盘管理系统主要采用了目前较为流行的云存储方式,在研究本课题的同时,不断学习新的知识技术,将新的技术运用到课题中去,在探索中寻求创新也正契合了大学生论文研究主要精神。
1.2 国内现状分析
随着网络技术的不断进步,伴随着云时代的到来,我们周边的生活也有了巨大的变化,从购物消费方式的转变、办公方式的转变可以看到人们对网络时代的创新和对未来的期待。
目前计算机的使用方便了我们的生活,其逐渐增多的文件如何进行管理是我们需要解决的问题。
每台计算机的硬盘容量都是有限的,而且硬盘的价格比较高,所以我们需要思考如何去降低对硬盘存储方式的依赖度。
现有的国内的很多网络服务商提供了网络存储环境,即文件上传至网上进行管理,这样就降低了计算机对硬盘空间的要求,目前较流行的网络硬盘如华为网盘、百度网盘、金山网盘,为人们免费提供了网络存储服务。
本课题的研究参照了这些优秀的产品,对其主要功能进行实现。
现阶段,网络存储还是新兴事物,需要我们不断的发现与创新,做出更好的产品奉献给大家。
1.3系统实现的功能及意义
本系统采用了B/S架构设计模式,其中前台展现主要包括网络硬盘的服务模块、用户登录注册模块以及网盘管理员模块,主要应用技术包括JSP、
jQuery、Ajax等技术。
后台逻辑主要包含对前台页面请求响应的控制,用户和管理员操作的实现,通过编写Java代码实现页面跳转控制和数据库的读写操作。
例如用户登录与注册,文件上传与下载,文件信息管理,以及用户信息维护,管理员登录,管理用户信息等功能,各模块之间相互联系,协同工作。
网络硬盘系统结合云存储的思想,为广大用户提供免费的存储服务,满足了人们对文件管理的需求,其免费、安全、便捷的特点会吸引更多了使用者,而服务提供商也因此获得了越来越多的用户资源。
更多的使用者意味着网络硬盘的市场越来越大,网络硬盘的提供商也会获得更多的发展环境。
2 相关技术与开发环境
2.1相关技术简介
2.1.1 B/S结构简介
B/S(Browser/Server)结构也就是浏览器/服务器结构[1]。
伴随着WEB 技术的发展,B/S模式得到了广泛的应用。
本系统结合B/S模式,将功能展示界面通过浏览器方式来实现,而主要的逻辑处理都是在服务器端(Server)进行实现。
这样可以极大的降低客户端电脑资源的消耗,减轻系统升级与维护的成本和工作量,系统升级时不需要对网络硬盘客户端进行操作,仅仅升级网络硬盘的服务器端即可,降低用户的总体成本。
B/S结构的优势是异地浏览和信息采集的灵活性。
不受时间、地点、操作系统的限制,只要可以使用浏览器上网,就可以使用B/S结构提供的服务。
但是B/S结构将所有的任务都放在了服务端进行处理,这样就对服务器性能有更高的要求。
2.1.2 MVC架构设计简介
随着JaveEE应用在计算机网络上的成熟,产生了许多优秀的设计思想,MVC就是其中的一种。
MVC(Model View Controller)是一种架构设计模式,是应用于图形化用户界面(GUI)的应用程序[2]。
MVC架构模式由Model(模型)、View(视图)以及Controller(控制器)三部分组成[3]。
模型是业务逻辑层,用来封装数据模型和业务逻辑;视图是表示层,是用来与用户实现交互的界面;控制器是控制层,控制整个业务的整体逻辑,实现后台的逻辑和前端页面的协同工作[4]。
MVC设计思想实现了按照业务功能对涉及到的对象分类,其目的是为了提高软件的开发效率,把各个对象层级间的耦合程度降到最低,提高代码的复用率,给开发人员减少了不必要的麻烦。
这种抽象的设计模式用来将应用程序和数据分成很多逻辑部件,使程序设计变得容易些,这个设计的假设前提是如果应用程序逻辑被聚集到一个部件里面,并且界面和用户围绕数据的交互能被个性化定制和改进而不需要重新编写业务逻辑。
本系统开发也采用
MVC架构设计思想,将应用进行分层设计开发,在提高代码可读性的同时,也方便了后期程序维护。
2.1.3 Java Web技术介绍
Java Web技术核心是使用Java技术解决Web互联网领域的应用工作[5]。
Web大致包括Web客户端和Web服务器端两部分,Java在服务器端的主要应用有JSP,Servlet和SSH框架等等,Java在客户端的应用有java applet,不过现在应用的很少,Java技术的不断进步也促使Web领域的飞速发展,为其提供了强大的技术保障。
目前比较流行的Java Web开发框架主要有:Struts、Spring、Hibernate,简称SSH框架[6]。
Struts就是一种经典的MVC框架,其架构简单,容易扩展;Spring MVC框架对验证、覆盖绑定等提供周期管理,与很多表示层技术/框架无缝结合;Hibernate是一个开源的ORM框架,其对JDBC进行了简单的封装,在Struts应用中使用Hibernate,开发人员能够以多种方式更加灵活地实现数据持久化[7]。
2.1.4 MySQL简介
MySQL是一个小型的开放源码的关联式数据库管理系统。
原始开发者为瑞典的MySQL AB公司,这个公司在2008年已被升阳微系统(Sun Microsystems)收购,但是升阳微系统公司在2009年被Oracle公司收购,现在MySQL已经成为Oracle旗下产品[8]。
MySQL已经被广泛地应用在计算机网络领域的中小型网站。
因为它的速度快、体积小、总成本低,特别是其开源的特点,为减少成本越来越多的公司采用MySQL作为数据库,MySQL被广泛应用的另外一个重要因素是MySQL所使用的语言就是用于访问数据库的标准化语言[9]。
与其他常见的一些大型数据库例如SQLServer、Oracle等相比,MySQL 数据库体形小了很多,但对于中小型企业和一般的个人用户来说,在目前主流的的数据库应用中,它的应用程序并没有逊色于大型数据库[10]。
对于本系统而言,MySQL满足实际需求,因为本项目对数据库需求较小,而且MySQL 开源软件,所以在本次开发过程中使用MySQL数据库对数据进行管理,可以大大降低总成本。
2.2开发环境概述
2.2.1 本网站的开发环境
网站开发语言:Java+JDK1.6+JSP2.0
后台数据库:MySQL数据库
开发工具:MyEclipse8.6
服务器:Tomcat6.0.4
网站运行平台:Windows 7
2.2.2 服务器端
软件应用:服务器Tomcat6.0.4及以上版本开发工具:MyEclipse8.6及以上版本
数据库:MySQL5.2及以上版本
2.2.3 客户端
浏览器:火狐浏览器、IE内核的浏览器
3 可行性研究及需求分析
3.1 可行性研究
可行性研究主要是根据目前市场上的一些类似的优秀案例,结合自己的设计方案,结合合理的分析并对自己的方案进行论证,由开发人员完成并写出可行性分析报告[11]。
下面就本开发系统从四个方面对可行性进行分析,分别是经济可行性,技术可行性,运行可行性及法律可行性。
3.1.1 经济可行性
经济可行性的目的是通过最小的开发成本,获取最大的经济效益,网络硬盘管理系统所需的相关资料素材全部可以通过网络途径获取。
软件方面,开发工具采用MyEclipse8.6,服务器采用Tomcat6.0.4服务器[12],数据库采用MySQL,管理数据库用navicat,这些软件资源都可以通过官方网站获取;硬件方面,对硬件服务器没有较高要求,不需要很大的经济投入。
本系统规模较小,开发成本低,实用性强,也不需要大量的人员进行开发、维护,所以开发此网站在经济方面是可行的。
3.1.2 技术可行性
网络硬盘系统的实现方式有多种选择,本系统采用B/S架构模式,将文件放在远程的服务器端,用户可通过网络进入网络硬盘查看相关文件。
采用MySQL作为数据库,开发工具采用MyEclipse,服务器采用Tomcat服务器,整个系统管理规范化,使数据的安全性和完整性得到了保障,各模块分立,提高了系统的工作效率。
因此,网络硬盘管理系统在技术方面是可行的。
3.1.3 实施可行性
本系统的使用人群为广大的网络用户,作为开发人员,首先想到的就是在实现该系统各种功能的同时,能够兼顾用户的个人体验即可操作性。
其次本系统为用户设计了方便、快捷的功能,通过操作实施可以让用户体验到本系统的优点,并且登录该系统需要对用户的身份进行验证,在设计中通过身份验证可以判断该用户是否有管理用户的权利。
最重要的是,本系统具有良
好的扩充性,当需求改变时可灵活的作出调整,进一步完善系统的功能。
因此,本系统在实施方面是可行的。
3.1.4 法律可行性
本系统在开发过程中,所有的开发方式及资料均未违反法律规定,从法律角度上来说是可行的。
综上所述,通过对四个方面的可行性分析,本系统不需要很大的经济投入。
并且规模较小,开发成本低,实用性强,操作简便,界面简洁、明了,只需要很少的人员进行开发、维护。
因此,本系统的开发是可行的。
3.2 需求分析
3.2.1总体需求分析
万事开头难,就软件开发而言,首要的任务就是要确定软件需求。
据了解,软件项目中有40%—60%的问题来自于软件需求分析阶段,因为需求模糊或错误都会给开发人员带来意想不到的麻烦。
软件需求是指一个软件系统所具备的能力或条件,包括帮助用户解决问题或达到目的所需的条件,需求分析是软件定义部分的最后一个流程,它对目标软件系统提出了完整、清晰、准确、具体的要求。
下面是我对本系统做的总体需求分析:
1.本系统设计的出发点是为广大用户提供一个免费的网络硬盘,以云存储的方式,实现对文件的在线查看和管理。
2.网站有独立的服务器支持其运行,需要专业的开发人员对其运维。
3.用户可以注册、登录、上传、下载、共享文件,可以对文件夹进行加密和取消加密,可以在线管理文件,对其进行修改和删除,也可以给管理员留言,表达自己的所思所想。
4.管理员登录可查看用户信息、留言信息,具备删除用户信息的权限。
3.2.2功能需求分析
总体功能框架图如图3.1所示:
图 3.1 总体功能框架图
网络硬盘管理系统分为前台页面模块和后台功能模块,前台页面模块主要分为用户登录注册页面、网盘资源管理页面、用户信息维护页面、资源共享页面、和管理员主页面;后台模块主要实现对前台信息的响应以及与数据库的交互功能,分为用户登录注册验证的功能、文件上传下载和加密功能、文件共享、用户信息维护等等。
系统的前台功能模块图如图3.2所示:
图 3.2 前台功能模块图
1.登录与注册:实现用户登录验证与新用户的注册功能,对用户输入的信息内容格式进行验证;
2.网盘资源管理:登录网盘主页面,实现文件的上传与下载,并且提供文件加密功能;
3.资源树形展示:将网盘中的文件以树形列表的形式展示;
4.网盘存储概况:用户登录后可查看网盘已使用空间大小和空间总大小;
5.用户信息维护:在用户信息维护模块可修改用户名密码及基本信息,具备上传用户自定义头像功能;
6.资源分享:用户可将已上传文件共享,便于其它用户下载;
7.管理员模块功能:指定帐号登录系统可查看用户信息和留言信息,并且能够删除已有用户信息。
后台管理模块图如图3.3所示:
图 3.3 后台管理模块图
1.用户登录与注册:实现对用户信息的入库存储以及与数据库交互验证用户是否存在;
2.文件上传下载:配合前台jQuery插件实现资源文件的上传下载以及文件的拖动;
3.资源共享:对需要共享的文件提供一个生成的资源链接,其它用户可以去下载共享的文件;
4.用户信息维护:用户可修改已注册过的基本信息,包括用户名密码等信息,此后台模块即提供用户信息的查询与修改存储功能;
5.管理员模块功能:管理员登录验证功能,提供查看用户信息与删除用户信息的后台方法。
4 网盘系统设计
4.1系统设计概述
系统设计部分是在需求分析的基础上,将软件由抽象化到具体化的过程。
本阶段的主要目的是根据需求分析阶段所提出的用户需求,设计出一个直观具体的模型,能够反映出用户的需求,方便与用户确认需求,在开发时能够为开发人员提供直观的物理模型[13]。
4.2系统用例图
用户用例图如图4.1所示:
图 4.1 用户用例图
用户的基本功能:
1. 提供注册功能和已注册用户登录功能;
2. 登录之后可上传新文件和下载已上传的文件;
3. 共享已经上传的文件;
4. 对文件夹通过设置密码的方式进行加密;
5. 可修改用户基本信息;
6. 给管理员留言。
管理员用例图如图4.2所示:
图 4.2 管理员用例图
管理员的基本功能:
1. 使用指定帐号登录系统;
2. 可查看用户所有信息,并且可删除指定用户的信息;
3. 可查看用户留言信息。
4.3系统结构图
本系统采用的是B/S开发模式,数据库采用的是MySQL数据库,系统结构图如图4.3所示:
1.表示层:前台页面,主要包括JSP文件、JS脚本以及页面中要到的图片素材。
2.业务逻辑层:实现对前台操作的后台响应,主要包括控制器、实体类以及实现方法。
3.数据层:通过JDBC技术实现逻辑层与数据的交互。
图 4.3 系统结构图
4.4 系统数据流图
系统数据流图,用于直观展示系统数据流动和存储的过程,便于定位数据的流动方向。
数据流图的基本图形符号有四种:
→:箭头表示数据的流向;
〇:圆框表示加工;
═:双杠,数据源点或数据库;
□:方框,数据源点或终点[14]。
本系统的数据流图包括网站前台操作和后台管理两部分,如图4.4所示:。