网盘系统分析与设计.docx
《网盘系统分析与设计.docx》由会员分享,可在线阅读,更多相关《网盘系统分析与设计.docx(40页珍藏版)》请在冰豆网上搜索。
![网盘系统分析与设计.docx](https://file1.bdocx.com/fileroot1/2023-2/24/000c5636-ebd1-4f78-a8a0-244969113f40/000c5636-ebd1-4f78-a8a0-244969113f401.gif)
网盘系统分析与设计
毕业论文(设计)
网盘系统分析与设计
学生姓名:
学号:
系别:
专业:
指导教师:
评阅教师:
论文答辩日期
答辩委员会主席
摘要
网盘系统是为了合理利用网络资源、提供各用户之间的学习与交流,并搭建有效管理信息资源的网络平台。
这次研究以开发一个信息共享平台为目标,设计一个网盘系统,本系统基于浏览器/服务器模式模式,在超文本预处理语言网页架站工具组合包集成开发环境下采用甲骨文关系型数据库管理系统和超文本预处理语言开发完成。
本系统由用户管理模块、文件管理模块、好友管理模块、信息管理模块与管理员模块等构成,其中用户模块实现了用户注册、登陆、修改个人资料、上传、下载及管理文件等功能;好友管理模块实现了注册进该系统的用户可添加其他用户为好友,并且设置内部访问权限,让用户群拥有自己的内部空间,这样可以更好更便捷的分享文件及图片信息而不被非本用户群内的人员看到;信息管理模提供用户可对自己的好友发送消息和接收消息,对好友的信息发送及接收进行有效的管理;超级管理员拥有普通管理员一样的权限外,还拥有用户管理的权限(可添加用户,为用户分配权限,也可删除某个存在的用户或修改其信息,用户信息包括密码等)。
该系统可以提供局域网内用户更快速、更便捷的分享图片、文件上传和下载,使他们在互联网络中不受时间和空间的限制,只要在这个系统中的用户都可以进行文件共享上传、下载文件操作,进入空间直接,界面更简单明了;本系统能促进用户之间的信息交流,实现用户自由访问,操作方便、简单,提高网络用户之间的信息交互效率。
关键字:
数据库,网盘系统,超文本预处理语言
Abstract
ThisnetworkdisksystemisanetworkplatformforNetizens.ThesystemaimsatmakinguseofInternetresources,providesexchanginglearningbetweeninsidersofNetizens,andmanagesinternalaffairsefficiently.ThissystembasedonB/Smode,whichcompletedwithMysql+Phplanguageunderappservintegrateddevelopmentenvironment.Thissystemismadeupofseveralmanagementmodules;includingUser,Filemanagement,Friend,MessageandAdministrator.AndthepartofUserachievesthefunctionofuser’sregistration,loggingin,alteringpersonalinformation,uploading,downloadingandfilesmanagementandsoon.TheFriendpartmakesurethatregisteredusercanaccessthissystemandaddotherusersasfriends,installingaccesspermission,providingthememberstheirownspaceofthemselves,sharingmoreconvenientandbetterdocumentsandimageswithoutbeingseenbynon-member.UserscansentandreceivemassagesfromfriendsintheInformationpart..Superadministratorholdthesameauthorityasordinaryoneandgettherighttomanageusers,suchastoaddmembers,todistributepermissionforusers,todeleteorexchangeuser’sinformation,likepassword.ThecentralnetworkdisksystemmakeiteasierandfasterforinsidersofLocalareanetwork(LAN),toshare,uploadanddownloadfileswithnolimitoftimeandspace.Thissystemprovidesimpleinterfaceforuserstoshare,uploadanddownloadeasier,toenterzonedirectly.Thesystemcanpromoteinformationexchangebetweenintermembers,makingafreeandeasyvisitforuser,improvingtheInformationinteractionefficiencyofthememberoftheInternetusers.
Keywords:
Database,Networkdisksystem,HypertextPreprocessor
1绪言
1.1课题背景
在信息技术迅速发展的今天,信息以数据资料的形似演变为多种形态透过复杂的信息网络系统传递。
随着Internet的日益普及,信息的交互传递已经被推向至高点。
在基于信息共享的理念上,如何快速、准确的获得信息也成为人们关注的关键问题。
新一代基于互联网的企业(如Google、XX等),更是仅仅抓住这个问题的核心,提供信息共享与检索的服务,并向Microsoft、SunSystem等传统IT企业发起了挑战[1]。
所以,对于文件共享与检索服务的研究,也正成为当今互联网技术研究的前沿。
本毕业设计的目的主要是为了检查学生综合运用以前所学知识(包括以前所学的一些关于网络技术、网络协议、数据库、编程技术等相关知识)的能力,实现一个网盘系统为目标,开发一个功能较完善的基于B/S的网盘系统。
随着计算机及网络技术的不断发展,现代通讯工具应用的普及,计算机在现代社会生活中发挥着重要的作用。
而与之相伴随的就是大量的数据资料而且是一些经常使用的文件资料。
根据人们的实际需求,我们提出了基于计算机网络的文件共享系统的设计方案,并根据该设计方案部分地实现了文件共享及检索系统的基本功能[2]。
随着网络技术应用的普及,各地区相继建立了自己的网络,并开始实施网上办公和网上交流。
文件共享是将用户的文件存放在互联网上,方便用户“携带”他们的文件,方便用户与他的好友或同事“共享”他们的文件,用户可以有如下操作:
上传、下载、删除文件,以及创建和查询文件;开设、冻结、删除、修改下级账号等等。
人们可以不受时间和空间的限制,文件共享上传文件简易,进入空间方便,界面更简单明了。
本系统是根据一个局域网内共享数据资料和信息交互的需求为基础的一个项目开发,并构建一个小区域内的网盘系统模型。
由于现代办公部门普遍搭建局域网络,因为工作和学习的需要,每天都会有大量的文件进行传输和相关消息的公告等;虽然本部门内部备有U盘,QQ群共享等文件传输工具,但是U盘在物理位置上不够方便,而QQ群共享在上传速度和上传大小上及空间容量上会有一定的限制,缺乏一个较为系统性的文件传输体系,这给该部门的办公人员对资料的传输和内部数据的交流带来了极大的不便,为了让该部门内部人员更快的数据资料共享和传输,因此开发出一个在局域网内上传速度快、空间容量大、可上传较大的文件、支持格式多和分有内部访问权限的系统是十分必要的。
1.2网络磁盘发展现状
当前互联网的发展相继出现了U盘物理硬盘和QQ群共享、QQ网盘、金山快盘、115网盘等网络磁盘工具,互联网上的网络磁盘功能较全面、操作比较便捷,用户通过上网登录系统的方式,可方便上传、下载文件,而独特的分享、分组功能突破了传统存储的观念[3]。
与其他同类产品相比,“网络磁盘”产品具有直观预览、四级共享、分组管理、稳定安全的四大特点[4]。
基本能满足人们对网络文件的传输和需求,也受到了广大网友的欢迎;可是互联网上的磁盘对网络带宽要求高、上传空间容量小的限制等问题;而U盘虽然传输速度快,但是却给人带来了病毒及木马的侵害的痛苦,最终带来了意外的数据损失[5]。
1.3网络磁盘系统开发的目的和意义
该系统的开发是基于局域网、构建一个小区域网盘系统模型,并以解决现代办公部门成员之间对数据资料的快速传输和交流及拥有大空间容量的需求为目的,实现在局域网的100M以太网内上传速度高达10M/S的上传速度,而且空间容量大而不受限制,可上传较大的多格式文件;并且设置内部访问权限,让该部门内部的小部门拥有自己的团队空间,内部更好的更便捷的交流而不被非本团队内的人员看到;超级管理员具有开设、冻结、删除、修改下级账号的权限、消息公告等等。
该系统提供部门间内部人员更快速、更便捷的分享图片、数据资料上传和下载,使他们在互联网络中不受时间和空间的限制,只要在这个系统中的用户都可以进行数据资料的共享上传、下载文件等操作,进入空间方便,界面更简单明了;这也响应了互联网磁盘的直观预览、分组管理、稳定安全的三大特点[6];更好的解决了QQ群共享、QQ网盘、金山快盘和115网盘等网络磁盘对带宽要求高、上传空间容量小的不足;同时减少了U盘带了的病毒和木马的转染及其在物理位置带来的不便,该系统的出现可以给部门办公成员带来极大的方便,提高办公部门成员的工作效率,这也就是这个系统存在的意义。
1.4计算机网络模式的介绍
当今世界计算机网络的两大主流技术模式是客户机/服务器模式(Client/Server,简称C/S)体系模式和Web浏览器/服务器模式(Browser/Server,简称B/S)体系模式[7]。
C/S是美国Borland公司最先研发的一项技术。
C/S模式是现在人们耳熟能详的一种技术,普通用户的计算机称为客户端,提供网络访问的计算机叫服务器。
它是基于软件系统的模式构架,通过它可以有效利用两端硬件资源的优势,将客户申请的大量任务合理分配到Client端和Server端来完成,大大降低了系统的通讯资源开销。
B/S模式即浏览器和服务器模式,由美国微软公司研发。
它是随着Internet技术的快速发展,对C/S模式的一种变化或者改进的模式。
在这种模式下,用户工作界面是通过web浏览器来完成,较少部分事务逻辑在前端(Browser)实现,但是大部分的事务逻辑还是在服务器端(Server)实现,即形成了所谓三层结构。
具体的说,首层为浏览器,次层为Web服务器,第三层为数据库服务器[8]。
浏览器是普通用户对数据的输入输出结果的交互界面,用户输入数据,浏览器将表单数据提交并发送到Web服务器,Web服务器应用程序接受并处理用户的数据并查询数据库中用户数据或把用户数据存入数据库等。
最终Web服务器将返回用户的结果插入HTML页面以浏览器的形式传送到客户端。
这给客户机电脑大大降低了工作负担,同时也减轻了维护成本和工作量。
1.4.1C/S模式
C/S模式也就是Client/Server(客户机/服务器)模式。
C/S模式是将任务有效分配到客户端和服务器端,大大降低了系统的通讯开销。
C/S是建立在局域网的网络平台上,由客户机与服务器共同完成的二层结构网络平台模式,由客户端和服务器端组成。
C/S模式工作方式是客户端发出请求,服务器直接将客户端申请的数据处理结果返回客户端的一种资源共享的工作方式。
也就是客户工作站的应用请求发送到数据库服务器,数据库服务器接受请求并对数据进行处理、最后把执行结果传回给客户端。
在这种模式下,服务器承担对数据库的全面管理和对系统的控制中心。
其优点是:
具有一道完整的应用程序,具有很强的交互性;采用的是局域网速度快,安全性较好;具有两层的逻辑结构网络通讯量小,没有过多的占用资源[9]。
1.4.2B/S模式
B/S模式即是Browser/Server(浏览器/服务器)模式,采用三层结构,即:
浏览器、Web服务器、数据库服务器。
B/S模式是基于Internet/Intranet的结构模型,即客户端采用浏览器申请,中间为web服务器,后台为数据库服务器的三层模式结构[10]。
Web服务器的为该模式的核心部分,主要负责接收浏览器的web页面请求和数据申请,并处理数据请求通过数据库接口程序转换成数据库服务器能够接受的形式,最后发送到数据库服务器,数据库服务器执行相应的数据库操作,将实行的操作结果通过数据库接口程序的转换送回Web服务器,Web服务器将结果处理成浏览器能够实现的形式,送回到发出请求的浏览器,并显示生成的结果。
B/S具有的特点为:
客户端只需有浏览器,不需要客户端应用程序,减轻了管理负担,进一步提高系统的可扩展性、安全性和可重用性[11]。
B/S模式主要是利用了国际上不断成熟的互联网浏览器技术,综合运用浏览器的多种嵌入式Script语言和ActiveX技术,原来需要复杂专用软件才能实现的强大功能可以通用浏览器就能实现,这有效的节约了开发成本,是一种较新型的软件系统构造技术。
1.5系统相关技术与环境简介
1.3.1采用的开发模型
以软件工程作为开发指导思想,拟用瀑布模型。
1.5.2PHP
PHP技术是一种运行于服务器端的网络编程语言,是用于开发动态Web应用程序的有效工具。
1.PHP技术特点。
(1)PHP是免费的;
(2)语法简单,易学易用;
(3)面向对象编程能力强;
(4)支持众多网络协议;
(5)具有强大的数据库功能和丰富的函数库;
(6)移植性强,跨多个平台;
(7)执行效率高;
(8)可扩展性极强[12]。
2.PHP技术的工作原理。
PHP主要的功能是在Web环境下,由客户端浏览器传递一些信息给Web服务器,再由Web服器去启动所指定的程序码来完成特定的工作[13],工作原理如图1-1所示。
图1.1PHP的工作原理
用户通过Web客户端浏览器请求某个功能页面。
Web服务器接受这个请求,根据系统的逻辑设计,将这个请求对应的PHP文件读出,并交给PHP处理程序。
PHP处理程序解释这个文件,执行相应的处理过程,如数据库的访问与操作等。
PHP从数据库中取得数据后,将按照文件的要求,形成一个标准HTML页面。
将生成的HTML页面交给Web服务器。
Web客户端浏览器将该HTML文件解释执行并显示出来。
这样就完成了一次客户浏览器端提出的某个PHP请求。
由于脚本在服务器上,而不是在客户浏览器端运行,传到浏览器上的Web页面是在服务器上生成的,所以服务器端脚本不易被复制,用户看不到所要浏览页上的PHP源代码,只能看到解释后的结果,这样就可以做到对源程序保密。
1.5.3Apache
Apache是因特网上使用很广泛的Web服务器,它通过httpd.conf、access.conf和srm.conf等三个文件来实现配置。
其主要特征是:
可以运行在所有计算机平台;支持最新的HTTP1.1协议;简单而强有力的基于文件的配置;支持通用网关接口CGI;支持虚拟主机;支持HTTP认证;集成Perl脚本编程语言;集成的代理服务器;具有可定制的服务器日志;支持服务器端包含命令(SSI)支持安全Socket层(SSL)用户会话过程的跟踪能力;支持FastCGI;支持JavaServlets。
1.5.4MySQL数据库
MySQL是基于SQL的客户/服务器模式的关系数据库管理系统,它具有功能强大、使用简单、管理方便、运行速度快、安全可靠性强、多线程、跨平台性、完全网络化、稳定性等优点,特别适用于Web站点或应用软件的数据库后端的开发工作。
另外,用户可利用许多语言编写访问MySQL数据库的程序。
作为开放源代码运动的产物之一,MySQL关系数据库管理系统越来越受到人们的青睐,应用范围也越来越广。
闻名遐迩的速度和易用性使MySQL特别适用于Web站点或应用软件的数据库后端的开发工作。
1.5.5运行环境Windows7
Windows7中文全称为视窗操作系统体验版。
是微软公司发布的一款视窗操作系统。
windowsxp发行于2001年10月25日,原来的名称是Whistler。
微软最初发行了两个版本,家庭版(Home)和专业版(Professional)。
家庭版的消费对象是家庭用户,专业版则在家庭版的基础上添加了新的为面向商业的设计的网络认证、双处理器等特性。
且家庭版只支持1个处理器,专业版则支持2个。
由于计算机的技术不断飞快发展,微软公司相继推出windows7,其中分有家庭版基础版、家庭高级版、简易版、企业版、专业版、旗舰版等。
1.5.6XAMPP
XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建XAMPP软件站集成软件包。
这个软件包原来的名字是LAMPP,但是为了避免误解,最新的几个版本就改名为XAMPP了。
它可以在Windows、Linux、Solaris三种操作系统下安装使用,支持多语言:
英文、简体中文、繁体中文、韩文、俄文、日文等。
1.5.7Dreamweave8
Dreamweaver是美国MACROMEDIA公司开发的集网页制作和网站管理于一身的所见即所得网页编辑器,是一种可视化网页制作工具,利用它可以轻松地制作出跨越平台限制和跨越浏览器限制的动态网页。
Dreamweaver可以开发HTML、XHTML、ColdFusion、ASP、ASP.NET、JSP或PHP网站。
通过平面设计工具以及代码提示、标签编辑器、可扩展色彩代码、标签选择器、片段和代码检验这类编码特性来实现对代码和设计的管理。
新集成的工作空间可以与MacromediaFlashMX和FireworksMX预定入住,其中包括了标示签的文档窗口、可放到Dock中的画板组、可定制的工具条和集成的文件浏览。
Dreamweaver还包括有预建的布局和代码,其中有网站结构、表格、可访问的模板以及为客户端交互应用而提供的JavaScript。
Dreamweaver是建立Web站点和应用程序的专业工具。
它将可视布局工具、应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开发人员和设计人员都可利用它快速创建界面吸引人并且基于标准的站点和应用程序。
从对基于CSS的设计提供领先的支持到手动编码功能,Dreamweaver在一个集成和高效的环境中为专业人员提供了所需的工具。
开发人员可以将其选择的服务器技术与Dreamweaver配合使用,建立将业主连接到数据库、Web服务和旧式系统的强大Internet应用程序。
DreamweaverMX组合了著名的可视排版工具Dreamweaver、快速Web应用程序开发工具DreamweaverUltraDev的功能和HomeSite的扩展代码编辑支持,形成了一个简单易用且功能强大的开发环境。
DreamweaverMX为当前的Web技术和标准提供完备而开放的解决方案,包括辅助功能和Web服务。
如下为其主要特点。
(1).方便的网站管理;
(2).无可比拟的控制能力;
(3).梦幻样版和XML;
(4).网站全方位的呈现;
(5).便捷安全的数据。
1.5.8EDITPlUS
EDITPlUS是一款功能强大的文字处理软件。
它可以充分的替换记事本,它也提供网页作家及程序设计师许多强悍的功能。
支持HTML、CSS、PHP、ASP、Perl、C/C++、Java、JavaScript、VBScript等多种语法的着色显示。
程序内嵌网页浏览器,其它功能还包含FTP功能、HTML编辑、URL突显、自动完成、剪贴文本、行列选择、强大的搜索与替换、多重撤销/重做、拼写检查、自定义快捷键,等等...
2需求分析
2.1可行性分析
可行性分析的任务是从技术上、经济上、社会上、法律上分析需要解决的问题是否存在可行的解。
2.1.1技术可行性
该系统采用B/S模式设计,在局域网或互联网上运行。
用户可以通过接入internet的计算机,访问该网盘系统。
本系统是一个比较普通的B/S模式的信息发布系统,在技术上具有可行性。
2.1.2经济可行性
现在,计算机的价格已经十分低廉,性能却有了长足的进步。
而本系统的开发,为大家节约了大量的资源,为此主要表现有以下几个方面。
(1)本系统可以给部门带来更轻松、更便捷的网上信息交流;
(2)本系统可以弥现有网络QQ网盘、补现有的QQ网盘、金山快盘、115网盘等网络磁盘工具对带宽要求高、空间容量小的限制;
(3)本系统可以较少U盘等对病毒及木马的传播;
(4)本系统的运行可以提高现代部门办公的工作效率。
所以,本系统在经济上是可行的。
2.1.3运行可行性
系统为一个小型的网络磁盘系统,所用的资源较小和运行环境要求较低,一般的电脑或服务器无论是硬件还是软件都能够满足条件,因此,本系统在运行上是可行的。
2.1.4法律可行性
该系统是为私人部门所设计的,在此过程中没有涉及合同、责任等与法律相抵触的方面。
因此,本系统在法律上是可行的。
2.2系统的需求分析
2.2.1实现系统功能的方式
需求分析的基本任务是准确回答“系统必须做什么?
”这个问题,也就是确定为了满足用户的需要系统必须实现什么功能。
具体地说,我们在开发系统之前应该确定系统必须具有的功能和性能,系统所需的运行环境,并且预测系统发展的前景。
需求分析阶段必须对系统的业务流程进行详细的分析,使业务流程进行抽象化,最终得到系统的数据流分析过程。
数据流图是从数据流动方向和加工的不同角度对系统的数据和对数据进行描述处理,所以数据流图代表了系统的逻辑模型。
数据流图只是抽象地描述了系统的概貌,系统的具体功能图还要用其它工具进行更详细的描述。
其ER图是详细描述系统中的数据元素、数据存储、数据流、处理和数据概念模型的好工具。
通过业务流程图、数据流图、ER图等图形工具,可以准确、规范地描述系统的需求。
2.2.2系统管理员的角色及功能
整个系统应该有两个操作用户角色,即超级管理员和普通管理员。
普通管理员只拥有一般用户的一些基本操作的权限,这些用户可一新建目录、文件和删除已存在的目录、文件,同时也可以上传和下载文件、图片及软件的共享,及对文件管理操作;在新建文件目录的同时可以设定访问权限,即可设为共享、只好友可访问、不共享,在上传的时候如果是共享那么就显示到系统首页,如果是只好友可见那么只有自己的好友才可以对文件进行下载访问,如果是上传到不共享文件那么使自己的私有空间任何人都看不到;一般用户还可以查找好友和添加好友,对好友发送消息及接收消息等。
超级管理员拥有普通管理员一样的权限外,还拥有用户管理的权限(可添加用户,为用户分配权限,也可删除某个存在的用户或修改其信息,用户信息包括密码等)。
超级管理员在后台对系统进行用户管理,对数据进行统计分析,并展开系统的正常运行维护工作,超级管理员可以发布消息公告以及建立好友链接。
每个角色操作的共性是通过输入正确的用户名,密码及四位彩色验证码后登录,进入不同的管理页面。
角色工作完成后,通过专门的出口退出登录状态。
2.2.3采用的技术
本设计采用B/