版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘 要网络硬盘(简称网盘),是一种可以用户基于互联网登录网站的进行信息数据上传、下载、共享等操作的信息数据存储空间。免费的网络硬盘的可用空间较少,一般对文件大小、下载速度、存放时间等限制;付费的网盘能提供大容量空间,文件大小、下载速度、存放时间及格式都不限制。电子邮箱所提供的附件功能是最早的网络硬盘,随着空间的增大,附件功能分立成网络硬盘。 同样是使用网页,flex技术实现网盘是在网页中加载用flex制作的上传控件,该控件能实现多文件上传,可以支持上传进度条显示,界面也非常漂亮,经过代码的优化速度非常稳定,虽然flex技术不支持断点续传,上传进度的显示也只能从客户端获取,防火墙等软件可能会影响
2、到此控件,但它比较适用于一般文件的传送。本系统采用asp.net 2.0开发语言实现服务器端的控制,采用flex技术实现客户端的控制。实现了包括文件夹的操作、文件的操作、用户的注册登录三个功能模块;通过文件夹功能模块,可以添加、删除、浏览、重命名、移动文件夹;通过文件功能模块,可以查看文件属性、上传、下载、删除文件;通过用户注册登录模块,可以实现用户的注册账号,修改密码,进行登录等功能。该系统具有具有一定的应用价值。关键词:flex;网络硬盘;asp.net;sql server 2005abstract the network hard disk (i.e. network plate),
3、is one kind of data storage spaces where the user can register the website based on the internet to carry on operation ,such as uploading, downloading, sharing data and so on. the free network hard disks usable space are few, generally to limits document size, downloading speed, storage time and so
4、on; the payment net plate can provide the large capacity space, the document size, the downloading speed, the storage time and the form does not be limited. the email address provides the appendix function is the earliest network hard disk, along with spatial enlargement, the appendix function estab
5、lishes separately the network hard disk. similarly uses the homepage, the flex technology realizes the net plate by loads the upload which in the homepage manufactures with flex to control, should control to be able to realize the multiple file uploads, may support the upload progress strip demonstr
6、ation, the contact surface is also attractive, passes through the code the optimized speed to be stable, although the flex technology does not support the break point to continue the biography, the upload progresss demonstration also can only from the client side gain, softwares and so on firewall p
7、ossibly affect to this controls, but it is quite suitable for the common document transmission. this system uses the asp.net 2.0 development languages to realize the server end control, uses the flex technology to realize the client side control. realized three functional modules including folders o
8、peration, the document operation, users registration; through the folder functional module, may increase, the deletion, glance over the folder; through the file function module, may examine the file attribute, upload, download the file; the registers module through the user registration, may realize
9、 users registration account number, the revision password, carries on registers and so on functions. so the system has certain application value. key words:flex ;hardware disk;asp.net;sql server 20051 绪论1.1 课题研究的背景在现实生活中经常有许多电子文件需要处理,比如在家庭电脑上做的项目要拿到公司去运行,需要将自己的文件、作品传输到其他的internet用户,要实现某些文件的共享等。如果每天拿
10、个移动硬盘或u盘进行文件的传输的话,有很多缺点,比如经常会因为容量问题而无法实现,有时候会因为遗忘而带来很大的不方便。解决这种问题的方法最好的是通过网络来实现文件的传输。网络的主要功能是实现文件的共享与信息传输,internet的出现与发展使得各种文件的传输工具成为了现实生活中必不可少的工具。比如:e-mail,ftp文件传输,网上邻居,以及最近网络硬盘等。flex是实现富因特网应用(ria,rich internet application)的一种技术,采用flex实现网络硬盘,能为用户提供更好的操作体验。flex技术提供了一个新的、基于标准的语言和编程模型,其编程模型支持常用的设计模式,能
11、够使企业创建许多有吸引力的、交互的快速应用,这些应用会增强用户的体验、增加客户的满意度和用户的工作效率。传统的web开发,在表现层次受到非常大的约束,flex技术不仅轻松解决了所有表现层的技术问题,让客户感受前所未有的web应用体验.更主要的是,基与flash as3.0 的纯面向对象和组件的构架,让b/s结构表现层的开发层次分明。所以采用flex技术实现网络硬盘具有现实可行性。1.2 课题研究的目的和意义网盘,向用户提供文件的存储、访问、备份、共享等文件管理功能,使用起来十分方便。用户可以把网盘看成一个放在网络上的硬盘或u盘,不管你是在家中、单位或其它任何地方,只要你连接到因特网,你就可以管
12、理、编辑网盘里的文件。不需要随身携带,更不怕丢失。开发这样一个系统具有实际应用意义。 网盘的原理其实就是网络公司将其服务器的硬盘或硬盘阵列中的一部分容量分给注册用户使用,因此网盘一般来说投资都比较大,所以免费网盘一般容量比较小,为防止用户滥用还往往附加单个文件最大限制(一般为1m到50m左右),因此免费网盘一般只用于存储较小的文件。而收费网盘则具有速度快、安全性能好、容量高、允许大文件存储等优点,适合有较高要求的用户。13国内外研究现状分析随着网盘市场竞争的日益激烈和存储技术的不断发展,传统的网盘技术已经显得力不从心,传输速度慢、冗灾备份及恢复能力低、安全性差、营运成本高等瓶颈一直困扰着网盘企
13、业。最新应用的云计算储存技术,为网盘行业带来了新的革命,传统的网盘将逐步被数据银行取代。数据银行是构建在高速分布式存储网络上的数据中心,它将网络中大量不同类型的存储设备通过应用软件集合起来协同工作,形成一个安全的数据存储和访问的系统,适用于各大中小型企业与个人用户的数据资料存储、备份、归档等一系列需求。数据银行最大优势在于将单一的存储产品转换为数据存储与服务,在这个技术下,网盘行业可能像金融行业银行一样,在单一的存储服务基础衍生出更多增值的服务,只有这种改变才能使数据银行迎来蓬勃发展的春天。 2 开发平台介绍和使用技术分析2.1 系统所需的软硬件平台(1) 操作系统:microsoft win
14、dows 7 (2) 浏览器:internet explorer 6.0及以上版本(3) internet信息服务器:asp.net development server(4) 数据库:microsoft sql server 2005(5) asp.net开发平台:visual studio 2008(6) flex开发环境:flex builder 3 2.2 主要开发软件介绍2.2.1 flex builder 3软件flex builder是adobe官方发布的ide(集成开发系统),用来构建在开源的eclipse ide上,使用flex的mxml和actionscript技术,进行f
15、lex书写和调试。它具有可视的代码和设计视窗。flex builder可以提供代码提示和其他的帮助,并可以使用自定义的编译和调试(debug)。flex builder 包括两个模式:开发模式(flex development)和调试模式(felx debugging)。当建立一个flex项目时,视角自动切换为开发环境;当进行调试操作时,视角自动切换为调试模式。flex builder 3是adobe首选开发工具,它使用flex框架构建应用程序。flexbuilder现在具有针对windows和mac os x的版本。flex builder 3是一个专为eclipse工作台这几的插件。fle
16、x builder的独立配置包括构建flex应用程序所需的所有功能,包括eclipse 3.3,而插件安装选项允许在现有eclipse安装的基础上安装flex builder。flex builder 3 添加了许多视图和编辑器形式的工具,提高了代码编写的速度和效率。使用flex构建应用程序的开发人员通常拥有某种其他编程语言的背景。在flash中创建和应用文档无需任何编程工作,但flex应用程序几乎完全依靠编码来实现。flex中的动画完全通过actionscript进行处理,因为flex的开发工具包中不包含时间轴。flex也包含一些高级工具,用于处理包含数十或数百个视图和屏幕的大型应用程序。最
17、后,flex应用程序用源代码编写,这些源代码存储在文本文件中。可以使用源代码控制应用程序(如cvs和subversion)轻松管理这些文本文件。因此,依赖这些管理工具的多成员开发团队会发现flex非常适合他们原来的工作方式。对于图形设计人员来说,flex builder3 的设计视图功能比以前的版本更加友好和实用。2.2.2 microsoft sql server 2005软件sql server 2005是一个全面的数据库平台,它使用集成的商业智能(bi)工具提供了企业级的数据管理。sql server 2005数据库引擎为关系型数据和结构化数据提供了更加安全可靠的存储功能,是您可以构建和
18、管理用于业务的高可用和高性能的数据应用程序。sql server 2005发布了6个版本,分别是企业版、标准版、工作组版、开发版、简易版和简版。microsoft sql server 2005是微软的新一代数据管理和分析解决方案,它在sql server 2000的基础上扩展了数据可靠性、可用性、可编程性、易管理性等方面的特性,使用户在应用数据和分析程序方面更加安全、稳定和可靠。这些新特性使它成为大规模联机事务处理、数据仓库和电子商务应用程序的优秀数据库平台。概括起来,sql server 2005数据库管理系统具有以下新特性。 (1) 管理工具集。sql server 2005提供了一个集
19、成的管理控制台用来管理和监视sql server关系型数据库、集成服务、分析服务、报表服务、通知服务,以及分布式服务器和数据库上的sql mobile,在很大程度上可以帮助数据库管理员简化管理数据库的复杂度,并可以实现同时执行编写和查询,查看服务器对象,管理对象,监视系统活动,查看在线帮助等任务。(2) 专用的管理员连接。sql server 2005引入了一个专用的管理员连接来访问正在运行的服务器,即便该服务器没有响应或不可用。在以前的版本中,如果所有的内容出错了,那么只能关闭sql server服务或按下电源键。而在sql server 2005中,专用的管理员连接结束了这种情况。即使服务
20、器正在出现问题这个功能也允许数据库管理员对它发起单个诊断连接。(3) xml 技术。在使用本地网络和互联网的情况下,在不同应用软件之间散步数据的时候,可扩展标记语言(xml)是一个重要的标准。sql server 2005将会自身支持存储和查询可扩展标记语言文件。(4) 报表服务。利用sql server 2005, 报表服务可以提供报表控制,可以通过visual studio 2005发行。(5) 扩展的语言支持。在sql server 2005中,通用语言运行时(clr)被集成在数据库引擎中,开发人员利用多种熟悉的语言来开发数据库应用程序,包括:transact-sql、microsoft
21、 visual basic.net、microsoft visual c#.net。此外,通过使用用户定义类型和函数,clr集成也为开发人员提供了更多的灵活性。(6) 改进的数据库访问和web services。在sql server 2005中,可以开发数据库层的xml web services,把sql server作为一个http listener。还可以使用http直接访问sql server,而无需使用iis这样的中间层listener并且,sql server开放了一个web service接口,可以用来执行sql语句和调用函数及过程,查询结果可用xml格式返回,也可以利用visu
22、al studio的web services 架构来返回。(7) 安全方面的新特性。现在,数据库系统被用作网络应用程序后台的范围越来越大,对安全的要求也越来越高。sql server 2005 通过多种途径增强了数据的安全性。例如:每个组件、函数都进行了威胁模型测试;代码必须全部进行安全审核;利用代码工具进行自动化工具测试,并改良了测试方法包括入侵测试、假定场景测试、低权限测试等。除了以上的特性外,sql server 2005还增加或改进了其他性能,例如:数据镜像、在线操作、快照隔离、数据分区、快速恢复、密码策略、和本机加密等。2.2.3 visual studio 2008开发平台micr
23、osoft visual studio 2008是面向windows vista、office 2007、web 2.0的下一代开发工具,代号“orcas”,是对visual studio 2005一次及时、全面的升级。vs2008引入了250多个新特性,整合了对象、关系型数据、xml的访问方式,语言更加简洁。使用visual studio 2008可以高效开发windows应用。设计器中可以实时反映变更,xaml中智能感知功能可以提高开发效率。同时visual studio 2008支持项目模板、调试器和部署程序。visual studio 2008可以高效开发web应用,集成了asp.ne
24、t ajax 1.0,包含asp.net ajax项目模板,它还可以高效开发office应用和mobile应用。2.3 使用技术的分析2.3.1 ria技术ria是rich internet applications的缩写,翻译为富因特网应用程序。ria的目标是将桌面程序的表现力与浏览器的程序方便、快捷的结合在一起。开发者可以在浏览器程序上部署c/s客户端的程序。ria的最突出的特点是rich,同时ria最核心的部分也体现在rich中。rich包含了两层含义:1、丰富的数据模型ria技术提供了多种数据模型来处理客户端复杂的数据操作。使用ria可以将部分原本需要在后台程序处理的问题转移到客户端,
25、使数据能够被缓存在客户端,从而可以实现一个比基于html的响应速度更快,且数据往返于服务器的次数更少的用户界面。2、丰富的界面元素ria技术提供了比html更为丰富的界面表现元素,密集、响应速度快和图形丰富的页面元素与数据模型结合在一起,为用户提供好的使用体验。随着web应用程序复杂性越来越高,传统的web应用程序已经渐渐不能满足web浏览者的要求,这就是所谓的“体验问题”。ria的出现,提出了解决上述问题的新思路。虽然ria技术仍然处于起步阶段,但是对于想要减轻c/s中客户端繁重的任务,或是希望增强网页的表现力的用户来说,ria是最好的选择。2.3.2 使用flex技术开发web的优势fle
26、x是adobe公司开发的支持ria(rich internet applications)开发和部署的技术产品,主要面向企业级的应用。借助于flex的强大功能,能够开发出更富有交互性和标签的用户界面。flex弥补了许多传统web应用缺乏的元素,减少了与服务器之间通信的次数,能更为详细地展示数据的细节。其最适用的应用程序包括解决多步处理、客户端验证、控制可视数据、使桌面应用和web应用结合在一起,有更强大的表现力。flex在解决用户“体验问题”时,有自己的新特点,具体如下。1、高效性通过增强表现层的效果提高终端用户体验的投资回报。利用简单、引人注目的用户及降低网络及服务器的开销及企业集成来生成提
27、高收益、降低成本的应用程序。2、易用性利用直观的编程模型开发ria应用,无须改动现有的web开发工作流程。提高互操作性的行业标准,包括xml、soap与ecmascipt。3、灵活性使用基于组件的开发模型是flex应用程序开发十分灵活。开发者可利用flex中包含的预建组件和扩展组件来添加新的属性和方法以及创建新的组件。开发者还能够控制组件外观、确定组件如何响应用户交换。4、全面性迅速地创建足以达到企业级的性能及高投资收益的应用。2.3.3 使用 asp.net开发服务器端程序的优势asp.net是一种建立在公公语言运行环境基础上的程序开发架构,主要用于在服务器端开发强大的web应用程序。下面介
28、绍asp.net的强大优势:1、强大性和适应性因为asp.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到asp.net的web应用中。asp.net同时也是language-independent语言独立化的,所以可以选择一种最适合的语言来编写程序,或者把程序用很多种语言来写,现在已经支持的有c#(c+和java的结合体),vb,jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于com+开发的程序,能够完整的移植向asp.net。2、简单性和易学性
29、asp.net使运行一些很平常的任务如表单的提交、客户端的身份验证、分布系统和网站配置变得非常简单。例如asp.net页面构架允许你建立你自己的用户分界面,使其不同于常见的vb-like界面。3、高效可管理性asp.net使用一种字符基础的、分级的配置系统,可以使服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为zero local administration的哲学观念使a的基于应用的开发更加具体,和快捷。一个asp.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,而不需要系统的重新启动。
30、多处理器环境的可靠性 asp.net已经被设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。任何 asp.net 应用程序都可以使用整个 .net framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。 asp.net 可以无缝地与 wysiwyg html 编辑器和其他编程工具(包括 microsoft visual studio .net)一起工作。这不仅使得 web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 web 页的 gu
31、i 和完全集成的调试支持。3 需求分析3.1 项目背景分析我们经常有这样的需求:通过网络交换公共数据文件以实现资源共享,同时保护私有数据不被非法访问,并使用简单、直观的方式操作。我们常用的文件传输方式如ftp、email邮件、网上邻居等都能实现文件的传送。其中,“ftp”功能最为强大,但使用起来却稍显复杂,一大堆设置足以让许多人望而止步,尤其用户数量不可预见时,针对特殊需求用户的设置将更加繁琐;“email”是大家所熟悉的了,但它的传送不仅需要连入internet,而且安全性也是个问题,在企业内部,财务、劳资等文件资料需通过这种方式交流不是好办法;“网上邻居”是又一种传送文件的方法,通过在本机
32、上指定共享的web文件夹并放置资源文件,一定范围内的用户可以访问到这些文件,然而这种方式使用的范围相当有限,通常在同一个dns段地址内的用户才能顺利访问,其它尤其是internet上的用户很难使用,此外同email类似,它的使用也不直观,很多时候不得不在许多列表计算机上一层层展开搜索才有可能获取想要的资源。由此看来,以上三种方式虽然在一定程度上实现了文件数据的交流,但它们都主要面向“点对点”的传送(你只能被动地等对方放置数据而不能主动“可视化”地索取),无法实现“一块空间,资源互见”的应用需求,这种“点对多”的共享方式需要寻求另外的传输途径,网络硬盘就是一种很好的解决方式。所谓“网络硬盘”,是
33、将服务器上的磁盘空间提供给合法用户使用,这样用户就可以在互联网上直接实现文件的备份与转移。当然用户也可以通过客户端软件将这个磁盘空间虚拟成一个本地的目录,并完全集成到windows的资源管理器中,在操作方法上就像使用本地硬盘一样方便。通过网络硬盘,不仅可以备份电脑系统中的文件,而且可以轻松实现移动化办公。用户可以随时随地地进行个人文件的上传、下载、删除以及文件目录的新建和修改,甚至还可以实现网络中文件的共享等等,也就是说,只要用户愿意,就可以与网络上的所有人共享存放在网络硬盘上的文件。网络硬盘具有如下显著的作用:(1)文件存储人们都会有同样的困扰,超过软盘空间限制的文件无法携带、传输,借用cd
34、-r、盘、mo等存储设备对于普通pc用户来说成本过高。在互联网无所不在的年代,现有的应用服务远不能满足需求,通过网络实现数据存储应该是最佳选择,网络硬盘可以通过互联网络,在全世界的任何地方在线存储文件数据,实现真正意义上的3a服务(即anytime、anywhere、anyone)。(2)私密空间网络硬盘是一个完全属于用户的私密空间,无论是数据资料、程序文件、还是私人的邮件、通讯录,都可以安全的放在网络硬盘内。不仅如此,网络硬盘还能对存储的文件进行自动加密,没有正确的密码,任何人看不到“文件”保险箱目录和其中的文件内容,保证私人空间不被侵犯。开启密码掌握在使用者手中,保护个人隐私即安全又可靠,
35、能够简单有效地防止因为个人隐私泄露而造成的损失和尴尬。(3)自由共享用户将文件数据存入网络硬盘后,不但可以在任何时候访问,更能用于朋友、家人、合作伙伴共享。使用web浏览器或者桌面软件都可以查看或者下载用户的文件。信息存储加密系统保证数据的绝对安全。当用户被授权访问,或者用户需要与他人共享文件时,则通过网络硬盘来设置文件共享。用户可以给文件或目录生成独特的“提取码”,使远方的朋友能够方便地查看或下载。(4)安全可靠面对汹涌澎湃的电脑病毒,面对脆弱的硬件,面对不可预测的突发事件,只有及时地备份数据才能为人们提供万无一失的数据安全保护。将最重要的数据,使用网络硬盘进行备份和在线保存,可以在有意外发
36、生时,通过备份数据对数据进行灾难的恢复,使数据更加安全,可靠。存储在网络硬盘中的数据其它人只能根据权限访问,管理员也仅能对共享数据进行管理,充分保护用户隐私,使数据更加安全。网络硬盘能将重要的文件进行安全备份,因此将重要文件放在网络硬盘上保存起来,就可以避免病毒危害,黑客入侵和硬盘损坏所带来的危险。所以从上面的比较看来,网络硬盘做为一种服务主页应运而生,具有很强的生命力。开发这样的一个系统具有实际应用意义。本系统实现了以下功能:(1) 用户可以通过注册用户名、邮箱和密码免费获取一个自己的网络硬盘。然后进行登录就可以进行相应的在给定权限内的操作,如修改密码、安全退出等。(2) 文件夹模块,用户在
37、分配的网络硬盘内可以新建文件夹和删除文件夹。(3) 文件模块,用户可以点击文件夹然后查看该文件夹下的文件信息,然后可以浏览,查看属性,删除,下载等操作。并且可以上传文件到选中的该文件夹下。3.2 可行性研究分析(1)技术可行性。对于基于flex的网络硬盘系统而言,主要是用flex技术开发前台客户端程序,asp.net技术开发后台服务器端程序。主要是实现文件的上传下载功能以及数据库进行更新,添加,修改和删除。运用filereference类可以实现flex前端的上传下载,然后后台asp.net再进行处理相关的数据库处理即可。用sql server 2005 可以满足系统对数据库的要求,安全性好,
38、效率高。这是一个基于典型的c/s的web系统,利用flex + asp.net技术开发的优点:a、响应速度快,使数据能够缓存在客户端,减少数据在客户端和服务器端交互的次数。b、借助于flex的强大功能,能够开发出更富有交互性和标签的用户界面。c、flex和asp.net的通信机制十分完善,结合十分紧密,开发程序十分方便。(2)组织可行性。本系统在编写代码前做了很多准备工作,严格制订了任务书,而且对于开发系统所涉及的技术进行了深入的学习,对整个开发流程的安排也比较合理,能够保证按着任务书的计划完成整个系统的开发。使整个开发过程在组织之中,保证不出严重的滞后情况。(3)经济可行性。本系统是一个小型
39、web应用系统,实现简单,有很强的实用性而且不需要大的经济投入,在经济上是可行的。3.3 业务描述(1)进入登录注册页面进行登录注册操作。用户均可以通过注册获得一定磁盘存储空间,注册需要用户名,邮箱,和密码,注册成功后系统自动分配一定的空间,用户可在登录页面通过输入用户名和密码进行登录,登录成功后将跳转到自己网络硬盘的主页面,用户进行操作来上传下载自己需要的文件。注册登录验证用户身份进入个人网盘(2)进入文件夹页面操作。用户登录成功后进入文件夹主页面,可以对文件夹进行相应的操作。如添加、删除、重命名、浏览、移动文件夹。文件夹操作新建文件夹删除文件夹重命名文件夹浏览文件夹移动文件夹(3)文件操作
40、界面。进入个人网络硬盘后点击文件夹名,可在右面看到文件夹下面相应的文件。然后可以进行查看文件属性、上传、下载、删除文件等操作。上传文件查看文件属性下载文件删除文件文件操作(4)用户信息管理界面。进入主页面后,用户可以对自己的信息进行修改。如修改自己登陆的密码,如果显示修改成功,则用户下次需使用新密码进行登录。3.4 功能分析用户注册登录成功后可以进行的功能有:在系统自动分配的三个根文件夹(我的文档、我的图片、我的音乐)下新建文件夹和删除文件夹,而且还可以重命名文件夹、移动文件夹、浏览文件夹下的相关文件。用户还可以在相应的文件夹下上传文件、下载文件、删除文件和查看文件信息。用户还可以进行修改密码
41、、安全退出等功能。3.4.1 系统的功能特点(1)操作简单,界面人性化,所有相应可以实现的功能均列出。整个系统比较完整。(2)能够对所进行的操作做出迅速的反应,如添加,删除等结果可以立即显示。(3)由于flex的特点,在实现的过程中还减少了与服务器通信的次数,大大的提高了效率,实现无刷新的更新信息。(4)有较高的安全性,因为通过后台代码访问数据库,对前台又更好的透明性,同时也增强了安全性。3.5 数据流程分析(1)注册流程,新用户可以通过注册获得一个合法的网络硬盘空间。用户名是否占用?输入用户名注册输入邮箱名邮箱格式是否正确?输入密码和确认密码两者是否相同?是否是是否否注册成功,自动跳转到登录
42、页面(2)登录流程,用户输入正确的用户名和密码以及验证码,则可登录成功进入网络硬盘的主界面。用户名和密码是否正确?占用?输入用户名注册输入密码输入验证码验证码是否正确?否否是是登录成功,跳转到主页面(3)新建文件夹流程,选中在哪个文件夹下新建,然后输入要新建文件夹的名字,如果文件夹不存在,则新建成功。新建文件夹输入要新建的文件夹名字文件夹是否已存在?否是新建成功(4)删除文件夹流程,选中要删除的文件夹,点击按钮,查询该文件夹的子文件夹,然后一并进行删除。删除文件夹选中要删除的文件夹它是否有子文件夹?删除子文件夹否是删除文件夹确认要删除么?是返回否删除成功(5)上传文件流程,用户上传文件时,用户
43、先选择上传到哪个文件夹,然后点击浏览文件,选择上传文件,再点击上传即可显示进度条,顺利上传,当然在上传的过程中,可以点击取消,放弃正在上传的文件。而且还可以进行多文件上传。上传文件选择上传文件夹浏览文件上传文件多文件上传保存文件到服务器下添加记录到数据库中上传成功(6)下载文件流程,选中下载文件,点击下载,保存下载文件到选中的路径,即可进行下载。选择下载文件下载文件保存下载文件下载成功(7)删除文件流程,用户选择要删除的文件,确认删除后进行删除。删除文件选择要删除的文件确认要删除吗?删除服务器上真实文件删除数据库中文件记录返回是否删除文件成功(8)修改密码流程,用户登录到主页面后可以进行密码修
44、改的功能,在检验到用户输入的旧密码正确后,用户就可以输入新密码,进行修改了。修改密码输入用户的旧密码输入用户的新密码密码是否正确?输入确认密码两者是否相同?修改成功否否是是4 系统详细设计4.1 数据库设计本系统是面向所有有网络硬盘存储需求的用户,包含用户的个人以及他存储的文件夹、文件的所有相关信息,信息量十分大,因此使用简单的桌面型的数据库管理系统是不能满足需要的,而且安全性也不高。因此,需要使用能够大型商业化企业级服务的用途的数据库管理系统,并且要能够提供很好的管理功能。由于系统是基于flex的网络硬盘设计,前台flex端和后台asp.net 之间主要通过httpservice和webse
45、rvice进行数据的通信,而asp.net则负责完成数据库的存取工作,所以我们需要一个和asp.net通信机制完善的数据库管理系统。因此采用了microsoft 公司的sql server 2005数据库管理系统。4.1.1 数据库的建设原则数据库的建设中有以下几个原则,我们需要认真的遵守,建立完整高效的数据库。(1) 根据初始条件分析,明确所要设计的数据库在逻辑和物理上的架构,能有一个明确细致的需求分析文档,在其中体现分析所得到的开发和管理需求。(2) 在需求分析的基础上,从中抽取出原始数据集的实体,然后,对实体进行概念分层和概念抽象,进行概念模型的设计;(3) 在概念模型的基础上,运用e-
46、r方法,设计出整个系统的模式和子模式,并通过逻辑设计以及物理设计最终确定系统的数据库逻辑架构与物理布局;(4) 在数据库的机构基础上,进行数据集的行为设计,并在此基础上,设计应用程序的布局、流程、以及视图集成,并将最终的应用程序投入实施。4.1.2 数据库的概念结构设计根据需求分析阶段形成的需求分析说明书,把用户的信息需求抽象为信息结构即概念模型的过程就是概念结构设计。也就是说,概念结构设计阶段是将现实世界中的客观对象首先抽象为独立于具体dbms的信息结构。概念结构实现了机器世界与现实世界沟通,一方面能够充分反映现实世界,包括实体和实体之间的联系,同时又易于向关系、网状、层次等各种数据模型转换
47、。当现实世界需求改变时,概念结构又可以很容易地作相应调整。网络硬盘系统涉及到的是用户个人信息,以及其文件夹信息和文件信息。通过对现有网络硬盘系统的分析和研究,我明确了系统所涉及到的业务需求,通过对这些需求进行抽象,得到准确的dbms。数据库的概念结构需要有以下特点:(1)要真实、充分的放映现实世界,包括自己系统中设计到的所有事物与事物之间的联系,同样需要以满足用户对数据的需求为目标来设计一个真实的模型。(2)易于理解,这样可以方便和不懂得计算机的人员进行交流,特别是在设计数据库时候,需要验证数据库信息是否全面,这时需要相关用户参与系统数据库设计。作为下一步数据库的逻辑结构设计的前提和参考,我们
48、必须保证数据库概念设计的完整性和正确性,这里我们采用的是自顶向下的方式来设计的,即首先定影全局概念模型结构的框架,然后逐步细化,这种方式一般和自底向上设计策略共同使用,我们使用自顶向下进行需求分析,然后再用自底向上的设计概念结构。通过对现有网络硬盘系统的分析和研究,最终得到了下面的e-r模型视图:用户注册合法用户用户名密码邮箱新建文件夹上传文件文件名文件大小文件类型上传日期所属用户文件夹名硬盘下载nn1mn1nm所属文件夹所属父文件夹图4-1 系统e-r模型视图4.1.3 数据库的逻辑结构设计概念结构是独立于任何dbms数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本e
49、-r 图转换为与选用的dbms产品所支持的数据模型想符合的逻辑结构。由于本次系统设计是网络硬盘系统,它涉及到了信息主要是用户的个人信息,和用户的文件夹信息及上传的文件信息。所以我使用三个表来分别进行管理,即用户表、文件夹表、文件表:(1)用户表记录了用户的用户id、用户名、密码、邮箱号、所有磁盘空间、已使用磁盘空间。其中用户“id”是主键,唯一确定每个用户。用户名和密码是必须的,而且用户名不能重名。所有磁盘空间是系统初始化给定的(16mb),已使用磁盘空间记录用户已经使用的空间,初始化为0。表1 用户表列名数据类型允许空备注useridint(自动编号)否主键,唯一确定usernamevarc
50、har(50)否用户名passwordvarchar(50)否用户密码emailvarchar(50)用户邮箱sizeint否所有空间,初始为16mbusedsizeint否已用空间,初始为0(2)文件夹表记录了文件夹的信息,文件夹的id、文件夹的名字、文件夹的地址、文件夹所属的用户id、文件夹所属的父文件夹id。其中,文件夹的id是主键,文件夹所属用户id和父文件夹id是外键。表2 文件夹表列名数据类型允许空备注folderidint(自动编号)否主键,唯一确定foldernamevarchar(50)否文件夹名字folderurlnvarchar(max)否文件夹的存储地址useridin
51、t否外键,文件夹所属的用户idparentfolderidint待添加的隐藏文字内容2否外键,文件夹的父文件夹id(3)文件夹记录了文件的相关信息,文件id、文件名、文件存储地址、文件类型、文件大小、文件所属的文件夹id、文件的简要描述、文件的上传时间。其中文件id是主键,文件所属的文件夹id是外键。表3 文件表列名数据类型允许空备注fileidint(自动编号)否主键,唯一确定filenamevarchar(50)否文件名fileurlnvarchar(max)否文件的存储地址filetypenchar(10)否文件类型filesizeint否文件大小folderidint否外键,所属文件夹
52、idfiledescriptionnvarchar(max)文件的简要描述uploaddatesmalldatetime文件的上传日期4.2 基于flex的web应用程序设计方法flex 可以在企业内部或在 web 上创建并交付富因特网应用程序 (ria),堪称最完整、最强大的 ria 开发解决方案。ria应用程序模型:客户层应用程序客户端,flash、java applet和其他gui表示层asp、jsp、servlets、flex和其他ui元素业务层连接到业务对象集成层连接到数据和传统系统资源层数据库、外部系统和传统资源图4-2 ria应用程序模型flex作为目前最完整、最强大的ria解决
53、方案,它能够创建个性化的丰富多媒体应用程序,极大地提高用户的体验,彻底革新人与 web 的交互关系。flex是adobe公司最新的服务器端产品,该技术提供了一个新的、基于标准的语言和编程模型,其编程模型支持常用的设计模式,能够使企业创建许多有吸引力的、交互的快速应用,这些应用会戏剧性的增强用户的体验、增加客户的满意度和用户的工作效率。传统的web开发,在表现层次受到非常大的约束,flex技术不仅轻松解决了所有表现层的技术问题,让客户感受前所未有的web应用体验.更主要的是,基与flash as3.0 的纯面向对象和组件的构架,让b/s结构表现层的开发层次分明,结构完整协调.在提供强大华丽表现的
54、同时,大大节约维护成本。4.3 系统功能模块的设计与实现通过对现有网络硬盘系统的分析和研究,我对与系统要求的功能有了基本的认识。这里我将系统设计为三个部分,即用户注册登录模块、文件夹功能模块、文件功能模块,下面我将对这几个模块的实现过程进行分析。4.3.1 用户注册登录模块由于这个系统是面向所有有存储需求的用户,所以每个用户都可以通过注册获得一个免费的存储空间。用户通过输入用户名(用户名不能重名)、密码和邮箱(邮箱格式必须正确)可以成功注册一个属于自己的网络硬盘,如果输入信息不正确,会有提示。注册成功后会自动跳转到登录页面,用户输入正确的用户名和密码即可登录进入自己的网络硬盘进行相应的上传、下
55、载、管理信息等工作。4.3.2 文件夹功能模块用户注册成功后系统会自动为它新建三个文件夹,我的文档、我的音乐、我的图片。用户可以在这三个根文件夹下新建自己的子文件夹。当然用户也可以对文件夹进行删除、重命名、移动等操作。文件夹的管理我是通过记录文件夹所属用户id和父文件夹id来进行分级管理的,并没有实际的在服务器中根据用户的需求新建真实的文件夹,只是在数据库中记录好文件夹之间的父子关系,然后传递给客户端用树控件进行显示。由于数据库中读取的数据要转化为xml类型数据才能作为flex中树控件的数据源。所以我先在后台用函数读取数据并转化为xml,然后再前台flex端再用httpservice获取数据传
56、递给树控件显示。在mxml标签中如果使用则表示建立了一个httpservice类的实例,那么调用该实例的send()方法时,将会对指定的url发出http请求,并且会处理请求返回。可以设置参数向http请求的url传递参数,还可以设置请求发送的方式。如果没有使用基于服务器的代理,那么只能使用get或post方式传递参数。另一方面,使用actionscript脚本也可以创建httpservice的实例并使用其功能。当用户新建文件夹后,我将这些信息传递给服务器端,服务器端再传递给数据库,然后取得数据库的信息刷新树。由于这样存在着一定的延时,所以我采用取得该文件夹的id,然后在前台先将该文件夹插入树中,最后再统一的将更新信息保存在数据库中,下次登录时刷新树。这样减少了客户端和服务器端的通信次数,有效的节约了资源。在用户删除文件夹时,我采用递归实现,要删除某个文件夹,先查找它的子文件夹,一直向下查找,直至没有子文件夹,然后再从下往上依次删除文件夹。4.3.2 文件功能模块文件功能模块,因为我的文件夹并不是真实存在的,所以上传的文件就不能实际的保存在哪个文件夹下,这就存在着要解决
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 养老院老人家庭沟通制度
- 数码产品租赁合同(2篇)
- 2024年物业设施管理合同3篇
- 2025年平顶山货运驾驶员从业资格证考试题库答案
- 2025年林芝货运从业资格证模拟考试下载
- 2025年怀化经营性道路客货运输驾驶员从业资格考试
- 《催眠治疗》课件
- 2024年教育设施融资租赁担保合同示例2篇
- 2025年东莞a2驾驶证货运从业资格证模拟考试
- 2024年版矿业开发合同
- 中职英语新高教版基础模块1unit4school-life
- 2023年北京国家公务员行测考试真题及答案-行政执法类
- 2023输电工程项目规范
- 初中信息技术课程课件《初识Python》
- 频谱仪N9020A常用功能使用指南
- “双减”背景下初中数学高效课堂实施策略研究 论文
- 天津高考英语词汇3500
- 木本园林植物栽培技术
- 抛石护脚施工方案
- 英文技术写作-东南大学中国大学mooc课后章节答案期末考试题库2023年
- 模拟电子技术课程设计-BS208HAF调频调幅两波段收音机组装与调试
评论
0/150
提交评论