版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 / 39目录第一章引言 21.1 课题研究的背景 21.2 课题研究的目的和意义 213 国外研究现状分析 3第二章开发平台介绍和使用技术分析 42.1 系统所需的软硬件平台 42.2 主要开发软件介绍 42.2.1 FLASH BUILDER 4 软件 42.2.2 MICROSOFT SQL SERVER 2005 软件 52.2.3 VISUAL STUDIO 2008 开发平台 62.3 使用技术的分析 72.3.1 RIA 技术 72.3.2 使用 FLEX 技术开发 WEB 的优势 72.3.3 使用ASP.NET 开发服务器端程序的优势 8第三章需求分析 93.1 项目背景分
2、析 93.2 可行性研究分析 113.3 业务描述 113.4 功能分析 133.4.1 系统的功能特点 133.5 数据流程分析 14第四章系统详细设计 184.1 数据库设计 184.1.1 数据库的建设原则 194.1.2 数据库的概念结构设计 194.1.3 数据库的逻辑结构设计 204.2 基于 FLEX 的 WEB 应用程序设计方法 222 / 394.3 系统功能模块的设计与实现 234.3.1 用户注册登录模块 234.3.2 文件夹功能模块 234.3.2 文件功能模块 244.4 界面设计 25第五章系统测试 275.1 注册登录模块测试用例 275.2 文件夹模块测试用例
3、 285.3 文件模块测试用例 305.3 用户管理模块测试用例 33第六章总结和展望 356.1 总结 356.2 展望 36参考文献 37致 38第一章 引言1.1 课题研究的背景在现实生活中经常有许多电子文件需要处理,比如在家庭电脑上做的项目要拿到公司去运行,需要将自己的文件、作品传输到其他的 Internet 用户,要实现某些文件的共享等。如果每天拿个移动硬盘或 U 盘进行文件的传输的话,有很多缺点,比如经常会因为容量问题而无法实现,有时候会因为遗忘而带来很大的不方便。解决这种问题的方法最好的是通过网络来实现文件的传输。网络的主要功能是实现文件的共享与信息传输,Internet 的出现
4、与发展使得各种文件的传输工具成为了现实生活中必不可少的工具。比如:E-Mail,ftp文件传输,网上邻居,以与最近网络硬盘等。3 / 39FLEX 是实现富因特网应用(RIA,Rich Internet Application)的一种技术,采用 FLEX 实现网络硬盘,能为用户提供更好的操作体验。Flex 技术提供了一个新的、基于标准的语言和编程模型,其编程模型支持常用的设计模式,能够使企业创建许多有吸引力的、交互的快速应用,这些应用会增强用户的体验、增加客户的满意度和用户的工作效率。传统的 WEB 开发,在表现层次受到非常大的约束,Flex 技术不仅轻松解决了所有表现层的技术问题,让客户感受
5、前所未有的 WEB 应用体验.更主要的是,基与 FLASH AS3.0 的纯面向对象和组件的构架,让 B/S 结构表现层的开发层次分明。所以采用 FlEX 技术实现网络硬盘具有现实可行性。1.2 课题研究的目的和意义网盘,向用户提供文件的存储、访问、备份、共享等文件管理功能,使用起来十分方便。用户可以把网盘看成一个放在网络上的硬盘或 U 盘,不管你是在家中、单位或其它任何地方,只要你连接到因特网,你就可以管理、编辑网盘里的文件。不需要随身携带,更不怕丢失。开发这样一个系统具有实际应用意义。 网盘的原理其实就是网络公司将其服务器的硬盘或硬盘阵列中的一部分容量分给注册用户使用,因此网盘一般来说投资
6、都比较大,所以免费网盘一般容量比较小,为防止用户滥用还往往附加单个文件最大限制(一般为 1M 到 50M 左右) ,因此免费网盘一般只用于存储较小的文件。而收费网盘则具有速度快、安全性能好、容量高、允许大文件存储等优点,适合有较高要求的用户。13 国外研究现状分析随着网盘市场竞争的日益激烈和存储技术的不断发展,传统的网盘技术已经显得力不从心,传输速度慢、冗灾备份与恢复能力低、安全性差、营运成本高等瓶颈一直困扰着网盘企业。最新应用的云计算储存技术,为网盘行业带来了新的革命,传统的网盘将逐步被数据银行取代。数据银行是构建在高速分布式存储网络上的数据中心,它将网络量不同类型的存储设备通过应用软件集合
7、起来协同工作,形成一个安全的数据存储和访问的系统,适用于各大中小型企业与个人用户的数据资料存储、备份、归档等一系列需求。数据银行最大优势在于将单一的存储产品转换4 / 39为数据存储与服务,在这个技术下,网盘行业可能像金融行业银行一样,在单一的存储服务基础衍生出更多增值的服务,只有这种改变才能使数据银行迎来蓬勃发展的春天。 第二章开发平台介绍和使用技术分析2.1 系统所需的软硬件平台操作系统:Microsoft Windows 7 浏览器:Internet Explorer 6.0 与以上版本Internet 信息服务器:ASP.NET Development Server数据库:Micros
8、oft SQL Server 2005ASP.NET 开发平台:Visual Studio 2008FLEX 开发环境:Flash Builder 45 / 392.2 主要开发软件介绍2.2.1 Flash Builder 4 软件Flash Builder 是 Adobe 官方发布的 IDE(集成开发系统) ,用来构建在开源的 Eclipse IDE 上,使用 Flex 的 MXML 和 ActionScript 技术,进行 Flex 书写和调试。它具有可视的代码和设计视窗。Flex Builder 可以提供代码提示和其他的帮助,并可以使用自定义的编译和调试(Debug) 。Flash B
9、uilder 包括两个模式:开发模式(Flash Development)和调试模式(Flash Debugging) 。当建立一个 Flex 项目时,视角自动切换为开发环境;当进行调试操作时,视角自动切换为调试模式。Flash Builder 4 是 Adobe 首选开发工具,它使用 Flex 框架构建应用程序。FlexBuilder 现在具有针对 Windows 和 Mac OS X 的版本。Flash Builder 4 是一个专为 Eclipse 工作台这几的插件。Flash Builder 的独立配置包括构建Flex 应用程序所需的所有功能,包括 Eclipse 3.3,而插件安装选
10、项允许在现有 Eclipse 安装的基础上安装 Flash Builder。Flash Builder 4 添加了许多视图和编辑器形式的工具,提高了代码编写的速度和效率。使用 Flex 构建应用程序的开发人员通常拥有某种其他编程语言的背景。在Flash 中创建和应用文档无需任何编程工作,但 Flex 应用程序几乎完全依靠编码来实现。Flex 中的动画完全通过 ActionScript 进行处理,因为 Flex 的开发工具包中不包含时间轴。Flex 也包含一些高级工具,用于处理包含数十或数百个视图和屏幕的大型应用程序。最后,Flex 应用程序用源代码编写,这些源代码存储在文本文件中。可以使用源代
11、码控制应用程序(如 CVS 和 Subversion)轻松管理这些文本文件。因此,依赖这些管理工具的多成员开发团队会发现 Flex 非常适合他们原来的工作方式。对于图形设计人员来说,Flex Builder3 的设计视图功能比以前的版本更加友好和实用。2.2.2Microsoft SQL Server 2005 软件SQL Server 2005 是一个全面的数据库平台,它使用集成的商业智能(BI)工具提供了企业级的数据管理。SQL Server 2005 数据库引擎为关系型6 / 39数据和结构化数据提供了更加安全可靠的存储功能,是您可以构建和管理用于业务的高可用和高性能的数据应用程序。SQ
12、L Server 2005 发布了 6 个版本,分别是企业版、标准版、工作组版、开发版、简易版和简版。Microsoft SQL Server 2005 是微软的新一代数据管理和分析解决方案,它在 SQL Server 2000 的基础上扩展了数据可靠性、可用性、可编程性、易管理性等方面的特性,使用户在应用数据和分析程序方面更加安全、稳定和可靠。这些新特性使它成为大规模联机事务处理、数据仓库和电子商务应用程序的优秀数据库平台。概括起来,SQL Server 2005 数据库管理系统具有以下新特性。管理工具集。SQL Server 2005 提供了一个集成的管理控制台用来管理和监视 SQL Se
13、rver 关系型数据库、集成服务、分析服务、报表服务、通知服务,以与分布式服务器和数据库上的 SQL Mobile,在很大程度上可以帮助数据库管理员简化管理数据库的复杂度,并可以实现同时执行编写和查询,查看服务器对象,管理对象,监视系统活动,查看在线帮助等任务。专用的管理员连接。SQL Server 2005 引入了一个专用的管理员连接来访问正在运行的服务器,即便该服务器没有响应或不可用。在以前的版本中,如果所有的容出错了,那么只能关闭 SQL Server 服务或按下电源键。而在 SQL Server 2005 中,专用的管理员连接结束了这种情况。即使服务器正在出现问题这个功能也允许数据库管
14、理员对它发起单个诊断连接。XML 技术。在使用本地网络和互联网的情况下,在不同应用软件之间散步数据的时候,可扩展标记语言(XML)是一个重要的标准。SQL Server 2005 将会自身支持存储和查询可扩展标记语言文件。报表服务。利用 SQL Server 2005, 报表服务可以提供报表控制,可以通过 Visual Studio 2005 发行。扩展的语言支持。在 SQL Server 2005 中,通用语言运行时(CLR)被集成在数据库引擎中,开发人员利用多种熟悉的语言来开发数据库应用程序,包括:Transact-SQL、Microsoft Visual Basic.NET、Micros
15、oft Visual C#.NET。此外,通过使用用户定义类型和函数,CLR 集成也为开发人员提供了更多的灵活性。改进的数据库访问和 Web Services。在 SQL Server 2005 中,可以开发数据库层的 XML Web Services,把 SQL Server 作为一个 listener。还可以使用 直接访问 SQL Server,而无需使用 IIS 这样的中间层 listener 并且,SQL Server 开放了一个 Web Service 接口,可以用来执行 SQL 语句和调用函数与过程,查询结果可用 XML 格式返回,也可以利用 Visual Studio 的 Web
16、 7 / 39Services 架构来返回。安全方面的新特性。现在,数据库系统被用作网络应用程序后台的围越来越大,对安全的要求也越来越高。SQL Server 2005 通过多种途径增强了数据的安全性。例如:每个组件、函数都进行了威胁模型测试;代码必须全部进行安全审核;利用代码工具进行自动化工具测试,并改良了测试方法包括入侵测试、假定场景测试、低权限测试等。除了以上的特性外,SQL Server 2005 还增加或改进了其他性能,例如:数据镜像、在线操作、快照隔离、数据分区、快速恢复、密码策略、和本机加密等。2.2.3 Visual Studio 2008 开发平台Microsoft Visu
17、al 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 应用,
18、集成了 ASP.NET AJAX 1.0,包含ASP.NET AJAX 项目模板,它还可以高效开发 Office 应用和 Mobile 应用。2.3 使用技术的分析2.3.1RIA 技术RIA 是 Rich Internet Applications 的缩写,翻译为富因特网应用程序。RIA 的目标是将桌面程序的表现力与浏览器的程序方便、快捷的结合在一起。开发者可以在浏览器程序上部署 C/S 客户端的程序。RIA 的最突出的特点是 Rich,同时 RIA 最核心的部分也体现在 Rich 中。Rich 包含了两层含义:1、丰富的数据模型RIA 技术提供了多种数据模型来处理客户端复杂的数据操作。使用
19、 RIA 可以将部分原本需要在后台程序处理的问题转移到客户端,使数据能够被缓存在客户端,从而可以实现一个比基于 HTML 的响应速度更快,且数据往返于服务器的次数更少的用户界面。8 / 392、丰富的界面元素RIA 技术提供了比 HTML 更为丰富的界面表现元素,密集、响应速度快和图形丰富的页面元素与数据模型结合在一起,为用户提供好的使用体验。随着 Web 应用程序复杂性越来越高,传统的 Web 应用程序已经渐渐不能满足 Web 浏览者的要求,这就是所谓的“体验问题” 。RIA 的出现,提出了解决上述问题的新思路。虽然 RIA 技术仍然处于起步阶段,但是对于想要减轻 C/S 中客户端繁重的任务
20、,或是希望增强网页的表现力的用户来说,RIA 是最好的选择。2.3.2 使用 FLEX 技术开发 WEB 的优势Flex 是 Adobe 公司开发的支持 RIA(Rich Internet Applications)开发和部署的技术产品,主要面向企业级的应用。借助于 Flex 的强大功能,能够开发出更富有交互性和标签的用户界面。Flex 弥补了许多传统 Web 应用缺乏的元素,减少了与服务器之间通信的次数,能更为详细地展示数据的细节。其最适用的应用程序包括解决多步处理、客户端验证、控制可视数据、使桌面应用和 Web 应用结合在一起,有更强大的表现力。Flex 在解决用户“体验问题”时,有自己的
21、新特点,具体如下。1、高效性通过增强表现层的效果提高终端用户体验的投资回报。利用简单、引人注目的用户与降低网络与服务器的开销与企业集成来生成提高收益、降低成本的应用程序。2、易用性利用直观的编程模型开发 RIA 应用,无须改动现有的 Web 开发工作流程。提高互操作性的行业标准,包括 XML、SOAP 与 ECMAScipt。3、灵活性使用基于组件的开发模型是 Flex 应用程序开发十分灵活。开发者可利用Flex 中包含的预建组件和扩展组件来添加新的属性和方法以与创建新的组件。开发者还能够控制组件外观、确定组件如何响应用户交换。4、全面性迅速地创建足以达到企业级的性能与高投资收益的应用。9 /
22、 392.3.3 使用ASP.NET 开发服务器端程序的优势ASP.NET 是一种建立在公公语言运行环境基础上的程序开发架构,主要用于在服务器端开发强大的 Web 应用程序。下面介绍 ASP.NET 的强大优势:1、强大性和适应性因为 ASP.net 是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在 Web 应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到 ASP.net 的 Web 应用中。ASP.net 同时也是 language-independent 语言独立化的,所以可以选择一种最适合的语言来编写程序,或者把程序用很多
23、种语言来写,现在已经支持的有C#(C+和 Java 的结合体) ,VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于 COM+开发的程序,能够完整的移植向 ASP.NET。2、简单性和易学性ASP.net 使运行一些很平常的任务如表单的提交、客户端的身份验证、分布系统和配置变得非常简单。例如 ASP.net 页面构架允许你建立你自己的用户分界面,使其不同于常见的 VB-Like 界面。3、高效可管理性ASP.net 使用一种字符基础的、分级的配置系统,可以使服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就
24、可以实现。这种被称为Zero Local Administration的哲学观念使 A 的基于应用的开发更加具体,和快捷。一个 ASP.net 的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,而不需要系统的重新启动。多处理器环境的可靠性 ASP.net 已经被设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。任何 ASP.NET 应用程序都可以使用整个 .NET Framework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。 ASP.NET 可以无缝地与 WYSIWYG HT
25、ML 编辑器和其他编程工具(包括 Microsoft Visual Studio .NET)一起工作。这不仅使得 Web 开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到 Web 页的 GUI 和完全集成的调试支持。第三章需求分析10 / 393.1 项目背景分析我们经常有这样的需求:通过网络交换公共数据文件以实现资源共享,同时保护私有数据不被非法访问,并使用简单、直观的方式操作。我们常用的文件传输方式如 FTP、Email、网上邻居等都能实现文件的传送。其中, “FTP”功能最为强大,但使用起来却稍显复杂,一大堆设置足以让许多人望而止步,尤其用户数
26、量不可预见时,针对特殊需求用户的设置将更加繁琐;“Email”是大家所熟悉的了,但它的传送不仅需要连入 Internet,而且安全性也是个问题,在企业部,财务、劳资等文件资料需通过这种方式交流不是好办法;“网上邻居”是又一种传送文件的方法,通过在本机上指定共享的 Web 文件夹并放置资源文件,一定围的用户可以访问到这些文件,然而这种方式使用的围相当有限,通常在同一个 DNS 段地址的用户才能顺利访问,其它尤其是 Internet 上的用户很难使用,此外同 Email 类似,它的使用也不直观,很多时候不得不在许多列表计算机上一层层展开搜索才有可能获取想要的资源。由此看来,以上三种方式虽然在一定程
27、度上实现了文件数据的交流,但它们都主要面向“点对点”的传送(你只能被动地等对方放置数据而不能主动“可视化”地索取) ,无法实现“一块空间,资源互见”的应用需求,这种“点对多”的共享方式需要寻求另外的传输途径,网络硬盘就是一种很好的解决方式。所谓“网络硬盘” ,是将服务器上的磁盘空间提供给合法用户使用,这样用户就可以在互联网上直接实现文件的备份与转移。当然用户也可以通过客户端软件将这个磁盘空间虚拟成一个本地的目录,并完全集成到 Windows 的资源管理器中,在操作方法上就像使用本地硬盘一样方便。通过网络硬盘,不仅可以备份电脑系统中的文件,而且可以轻松实现移动化办公。用户可以随时随地地进行个人文
28、件的上传、下载、删除以与文件目录的新建和修改,甚至还可以实现网络中文件的共享等等,也就是说,只要用户愿意,就可以与网络上的所有人共享存放在网络硬盘上的文件。网络硬盘具有如下显著的作用:(1)文件存储人们都会有同样的困扰,超过软盘空间限制的文件无法携带、传输,借用CD-R、盘、MO 等存储设备对于普通 PC 用户来说成本过高。在互联网无所不在的年代,现有的应用服务远不能满足需求,通过网络实现数据存储应该是最佳选择,网络硬盘可以通过互联网络,在全世界的任何地方在线存储文件数据,实现真正意义上的 3A 服务(即 Anytime、Anywhere、Anyone) 。(2)私密空间11 / 39网络硬盘
29、是一个完全属于用户的私密空间,无论是数据资料、程序文件、还是私人的、通讯录,都可以安全的放在网络硬盘。不仅如此,网络硬盘还能对存储的文件进行自动加密,没有正确的密码,任何人看不到“文件”保险箱目录和其中的文件容,保证私人空间不被侵犯。开启密码掌握在使用者手中,保护个人隐私即安全又可靠,能够简单有效地防止因为个人隐私泄露而造成的损失和尴尬。(3)自由共享用户将文件数据存入网络硬盘后,不但可以在任何时候访问,更能用于朋友、家人、合作伙伴共享。使用 Web 浏览器或者桌面软件都可以查看或者下载用户的文件。信息存储加密系统保证数据的绝对安全。当用户被授权访问,或者用户需要与他人共享文件时,则通过网络硬
30、盘来设置文件共享。用户可以给文件或目录生成独特的“提取码” ,使远方的朋友能够方便地查看或下载。(4)安全可靠面对汹涌澎湃的电脑病毒,面对脆弱的硬件,面对不可预测的突发事件,只有与时地备份数据才能为人们提供万无一失的数据安全保护。将最重要的数据,使用网络硬盘进行备份和在线保存,可以在有意外发生时,通过备份数据对数据进行灾难的恢复,使数据更加安全,可靠。存储在网络硬盘中的数据其它人只能根据权限访问,管理员也仅能对共享数据进行管理,充分保护用户隐私,使数据更加安全。网络硬盘能将重要的文件进行安全备份,因此将重要文件放在网络硬盘上保存起来,就可以避免病毒危害,黑客入侵和硬盘损坏所带来的危险。所以从上
31、面的比较看来,网络硬盘做为一种服务主页应运而生,具有很强的生命力。开发这样的一个系统具有实际应用意义。本系统实现了以下功能:用户可以通过注册用户名、和密码免费获取一个自己的网络硬盘。然后进行登录就可以进行相应的在给定权限的操作,如修改密码、安全退出等。文件夹模块,用户在分配的网络硬盘可以新建文件夹和删除文件夹。文件模块,用户可以点击文件夹然后查看该文件夹下的文件信息,然后可以浏览,查看属性,删除,下载等操作。并且可以上传文件到选中的该文件夹下。3.2 可行性研究分析(1)技术可行性。对于基于 FLEX 的网络硬盘系统而言,主要是用 FLEX 技术开发前台客户端程序,ASP.NET 技术开发后台
32、服务器端程序。主要是实现文12 / 39件的上传下载功能以与数据库进行更新,添加,修改和删除。运用FileReference 类可以实现 Flex 前端的上传下载,然后后台 ASP.NET 再进行处理相关的数据库处理即可。用 SQL Server 2005 可以满足系统对数据库的要求,安全性好,效率高。这是一个基于典型的 C/S 的 Web 系统,利用 FLEX + ASP.NET 技术开发的优点:a、响应速度快,使数据能够缓存在客户端,减少数据在客户端和服务器端交互的次数。b、借助于 Flex 的强大功能,能够开发出更富有交互性和标签的用户界面。c、FLEX 和 ASP.NET 的通信机制十
33、分完善,结合十分紧密,开发程序十分方便。(2)组织可行性。本系统在编写代码前做了很多准备工作,严格制订了任务书,而且对于开发系统所涉与的技术进行了深入的学习,对整个开发流程的安排也比较合理,能够保证按着任务书的计划完成整个系统的开发。使整个开发过程在组织之中,保证不出严重的滞后情况。(3)经济可行性。本系统是一个小型 Web 应用系统,实现简单,有很强的实用性而且不需要大的经济投入,在经济上是可行的。3.3 业务描述(1)进入登录注册页面进行登录注册操作。用户均可以通过注册获得一定磁盘存储空间,注册需要用户名, ,和密码,注册成功后系统自动分配一定的空间,用户可在登录页面通过输入用户名和密码进
34、行登录,登录成功后将跳转到自己网络硬盘的主页面,用户进行操作来上传下载自己需要的文件。注册登录验证用户身份进入个人网盘(2)进入文件夹页面操作。用户登录成功后进入文件夹主页面,可以对文件夹进行相应的操作。如添加、删除、重命名、浏览、移动文件夹。13 / 39文件夹操作新建文件夹删除文件夹重命名文件夹浏览文件夹移动文件夹(3)文件操作界面。进入个人网络硬盘后点击文件夹名,可在右面看到文件夹下面相应的文件。然后可以进行查看文件属性、上传、下载、删除文件等操作。上传文件查看文件属性下载文件删除文件文件操作(4)用户信息管理界面。进入主页面后,用户可以对自己的信息进行修改。如修改自己登陆的密码,如果显
35、示修改成功,则用户下次需使用新密码进行登录。3.4 功能分析用户注册登录成功后可以进行的功能有:在系统自动分配的三个根文件夹(我的文档、我的图片、我的音乐)下新建文件夹和删除文件夹,而且还可以14 / 39重命名文件夹、移动文件夹、浏览文件夹下的相关文件。用户还可以在相应的文件夹下上传文件、下载文件、删除文件和查看文件信息。用户还可以进行修改密码、安全退出等功能。3.4.1 系统的功能特点(1)操作简单,界面人性化,所有相应可以实现的功能均列出。整个系统比较完整。(2)能够对所进行的操作做出迅速的反应,如添加,删除等结果可以立即显示。(3)由于 Flex 的特点,在实现的过程中还减少了与服务器
36、通信的次数,大大的提高了效率,实现无刷新的更新信息。(4)有较高的安全性,因为通过后台代码访问数据库,对前台又更好的透明性,同时也增强了安全性。3.5 数据流程分析(1)注册流程,新用户可以通过注册获得一个合法的网络硬盘空间。15 / 39用户名是否占用?输入用户名注册输入邮箱名邮箱格式是否正确?输入密码和确认密码两者是否一样?是否是是否否注册成功,自动跳转到登录页面(2)登录流程,用户输入正确的用户名和密码以与验证码,则可登录成功进入网络硬盘的主界面。16 / 39用户名和密码是否正确?占用?输入用户名注册输入密码输入验证码验证码是否正确?否否是是登录成功,跳转到主页面(3)新建文件夹流程,
37、选中在哪个文件夹下新建,然后输入要新建文件夹的名字,如果文件夹不存在,则新建成功。新建文件夹输入要新建的文件夹名字文件夹是否已存在?否是新建成功(4)删除文件夹流程,选中要删除的文件夹,点击按钮,查询该文件夹的子文件夹,然后一并进行删除。17 / 39删除文件夹选中要删除的文件夹它是否有子文件夹?删除子文件夹否是删除文件夹确认要删除么?是返回否删除成功(5)上传文件流程,用户上传文件时,用户先选择上传到哪个文件夹,然后点击浏览文件,选择上传文件,再点击上传即可显示进度条,顺利上传,当然在上传的过程中,可以点击取消,放弃正在上传的文件。而且还可以进行多文件上传。上传文件选择上传文件夹浏览文件上传
38、文件多文件上传保存文件到服务器下添加记录到数据库中上传成功18 / 39(6)下载文件流程,选中下载文件,点击下载,保存下载文件到选中的路径,即可进行下载。选择下载文件下载文件保存下载文件下载成功(7)删除文件流程,用户选择要删除的文件,确认删除后进行删除。删除文件选择要删除的文件确认要删除吗?删除服务器上真实文件删除数据库中文件记录返回是否删除文件成功(8)修改密码流程,用户登录到主页面后可以进行密码修改的功能,在检验到用户输入的旧密码正确后,用户就可以输入新密码,进行修改了。19 / 39修改密码输入用户的旧密码输入用户的新密码密码是否正确?输入确认密码两者是否一样?修改成功否否是是第四章
39、 系统详细设计4.1 数据库设计本系统是面向所有有网络硬盘存储需求的用户,包含用户的个人以与他存储的文件夹、文件的所有相关信息,信息量十分大,因此使用简单的桌面型的数据库管理系统是不能满足需要的,而且安全性也不高。因此,需要使用能够大型商业化企业级服务的用途的数据库管理系统,并且要能够提供很好的管理功能。由于系统是基于 Flex 的网络硬盘设计,前台 Flex 端和后台 ASP.NET 之间主要通过 Service 和 WebService 进行数据的通信,而 ASP.NET 则负责完成数据库的存取工作,所以我们需要一个和 ASP.NET 通信机制完善的数据库管理系统。因此采用了 Micros
40、oft 公司的 SQL Server 2005 数据库管理系统。20 / 394.1.1 数据库的建设原则数据库的建设中有以下几个原则,我们需要认真的遵守,建立完整高效的数据库。(1) 根据初始条件分析,明确所要设计的数据库在逻辑和物理上的架构,能有一个明确细致的需求分析文档,在其中体现分析所得到的开发和管理需求。(2) 在需求分析的基础上,从中抽取出原始数据集的实体,然后,对实体进行概念分层和概念抽象,进行概念模型的设计;(3) 在概念模型的基础上,运用 E-R 方法,设计出整个系统的模式和子模式,并通过逻辑设计以与物理设计最终确定系统的数据库逻辑架构与物理布局;(4) 在数据库的机构基础上
41、,进行数据集的行为设计,并在此基础上,设计应用程序的布局、流程、以与视图集成,并将最终的应用程序投入实施。4.1.2 数据库的概念结构设计根据需求分析阶段形成的需求分析说明书,把用户的信息需求抽象为信息结构即概念模型的过程就是概念结构设计。也就是说,概念结构设计阶段是将现实世界中的客观对象首先抽象为独立于具体 DBMS 的信息结构。概念结构实现了机器世界与现实世界沟通,一方面能够充分反映现实世界,包括实体和实体之间的联系,同时又易于向关系、网状、层次等各种数据模型转换。当现实世界需求改变时,概念结构又可以很容易地作相应调整。网络硬盘系统涉与到的是用户个人信息,以与其文件夹信息和文件信息。通过对
42、现有网络硬盘系统的分析和研究,我明确了系统所涉与到的业务需求,通过对这些需求进行抽象,得到准确的 DBMS。数据库的概念结构需要有以下特点:(1)要真实、充分的放映现实世界,包括自己系统中设计到的所有事物与事物之间的联系,同样需要以满足用户对数据的需求为目标来设计一个真实的模型。(2)易于理解,这样可以方便和不懂得计算机的人员进行交流,特别是在设计数据库时候,需要验证数据库信息是否全面,这时需要相关用户参与系统数据库设计。作为下一步数据库的逻辑结构设计的前提和参考,我们必须保证数据库概念设计的完整性和正确性,这里我们采用的是自顶向下的方式来设计的,即首21 / 39先定影全局概念模型结构的框架
43、,然后逐步细化,这种方式一般和自底向上设计策略共同使用,我们使用自顶向下进行需求分析,然后再用自底向上的设计概念结构。通过对现有网络硬盘系统的分析和研究,最终得到了下面的 E-R 模型视图:用户注册合法用户用户名密码邮箱新建文件夹上传文件文件名文件大小文件类型上传日期所属用户文件夹名硬盘下载所属文件夹所属父文件夹图 4-1 系统 E-R 模型视图4.1.3 数据库的逻辑结构设计概念结构是独立于任何 DBMS 数据模型的信息结构。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本 E-R 图转换为与选用的 DBMS 产品所支持的数据模型想符合的逻辑结构。由于本次系统设计是网络硬盘系统,它涉与到
44、了信息主要是用户的个人信息,和用户的文件夹信息与上传的文件信息。所以我使用三个表来分别进行管理,即用户表、文件夹表、文件表:(1)用户表记录了用户的用户 ID、用户名、密码、号、所有磁盘空间、已使用磁盘空间。其中用户“Id”是主键,唯一确定每个用户。用户名和密码22 / 39是必须的,而且用户名不能重名。所有磁盘空间是系统初始化给定的(16MB) ,已使用磁盘空间记录用户已经使用的空间,初始化为 0。表 1 用户表列名数据类型允许空备注UserIdint(自动编号)否主键,唯一确定UserNamevarchar(50)否用户名Passwordvarchar(50)否用户密码emailvarch
45、ar(50)用户Sizeint否所有空间,初始为16MBUsedSizeint否已用空间,初始为 0(2)文件夹表记录了文件夹的信息,文件夹的 ID、文件夹的名字、文件夹的地址、文件夹所属的用户 ID、文件夹所属的父文件夹 ID。其中,文件夹的ID 是主键,文件夹所属用户 ID 和父文件夹 ID 是外键。表 2 文件夹表列名数据类型允许空备注FolderIdint(自动编号)否主键,唯一确定FolderNamevarchar(50)否文件夹名字FolderUrlnvarchar(max)否文件夹的存储地址UserIdint否外键,文件夹所属的用户 IDParentFolderIdint否外键,
46、文件夹的父文件夹 ID(3)文件夹记录了文件的相关信息,文件 ID、文件名、文件存储地址、文件类型、文件大小、文件所属的文件夹 ID、文件的简要描述、文件的上传时间。其中文件 ID 是主键,文件所属的文件夹 ID 是外键。表 3 文件表列名数据类型允许空备注23 / 39FileIdint(自动编号)否主键,唯一确定FileNamevarchar(50)否文件名FileUrlnvarchar(max)否文件的存储地址FileTypenchar(10)否文件类型FileSizeint否文件大小FolderIdint否外键,所属文件夹 IDFileDescriptionnvarchar(max)文
47、件的简要描述UploadDatesmalldatetime文件的上传日期4.2 基于 FLEX 的 Web 应用程序设计方法Flex 可以在企业部或在 Web 上创建并交付富因特网应用程序 (RIA),堪称最完整、最强大的 RIA 开发解决方案。RIA 应用程序模型:24 / 39客户层应用程序客户端,Flash、Java Applet 和其他 GUI表示层ASP、JSP、Servlets、Flex 和其他UI 元素业务层连接到业务对象集成层连接到数据和传统系统资源层数据库、外部系统和传统资源图 4-2 RIA 应用程序模型Flex 作为目前最完整、最强大的 RIA 解决方案,它能够创建个性化
48、的丰富多媒体应用程序,极提高用户的体验,彻底革新人与 Web 的交互关系。Flex 是 Adobe 公司最新的服务器端产品,该技术提供了一个新的、基于标准的语言和编程模型,其编程模型支持常用的设计模式,能够使企业创建许多有吸引力的、交互的快速应用,这些应用会戏剧性的增强用户的体验、增加客户的满意度和用户的工作效率。传统的 WEB 开发,在表现层次受到非常大的约束,Flex 技术不仅轻松解决了所有表现层的技术问题,让客户感受前所未有的 WEB 应用体验.更主要的是,基与FLASH AS3.0 的纯面向对象和组件的构架,让 B/S 结构表现层的开发层次分明,结构完整协调.在提供强大华丽表现的同时,
49、大大节约维护成本。4.3 系统功能模块的设计与实现通过对现有网络硬盘系统的分析和研究,我对与系统要求的功能有了基本的认识。这里我将系统设计为三个部分,即用户注册登录模块、文件夹功能模块、文件功能模块,下面我将对这几个模块的实现过程进行分析。25 / 394.3.1 用户注册登录模块由于这个系统是面向所有有存储需求的用户,所以每个用户都可以通过注册获得一个免费的存储空间。用户通过输入用户名(用户名不能重名) 、密码和(格式必须正确)可以成功注册一个属于自己的网络硬盘,如果输入信息不正确,会有提示。注册成功后会自动跳转到登录页面,用户输入正确的用户名和密码即可登录进入自己的网络硬盘进行相应的上传、
50、下载、管理信息等工作。4.3.2 文件夹功能模块用户注册成功后系统会自动为它新建三个文件夹,我的文档、我的音乐、我的图片。用户可以在这三个根文件夹下新建自己的子文件夹。当然用户也可以对文件夹进行删除、重命名、移动等操作。文件夹的管理我是通过记录文件夹所属用户 ID 和父文件夹 ID 来进行分级管理的,并没有实际的在服务器中根据用户的需求新建真实的文件夹,只是在数据库中记录好文件夹之间的父子关系,然后传递给客户端用树控件进行显示。由于数据库中读取的数据要转化为 XML 类型数据才能作为 Flex 中树控件的数据源。所以我先在后台用函数读取数据并转化为 XML,然后再前台 FLEX 端再用 Ser
51、vice 获取数据传递给树控件显示。在 MXML 标签中如果使用则表示建立了一个 Service 类的实例,那么调用该实例的 send()方法时,将会对指定的 URL 发出 请求,并且会处理请求返回。可以设置参数向 请求的 URL 传递参数,还可以设置请求发送的方式。如果没有使用基于服务器的代理,那么只能使用 Get 或 Post 方式传递参数。另一方面,使用ActionScript 脚本也可以创建 Service 的实例并使用其功能。当用户新建文件夹后,我将这些信息传递给服务器端,服务器端再传递给数据库,然后取得数据库的信息刷新树。由于这样存在着一定的延时,所以我采用取得该文件夹的 ID,然
52、后在前台先将该文件夹插入树中,最后再统一的将更新信息保存在数据库中,下次登录时刷新树。这样减少了客户端和服务器端的通信次数,有效的节约了资源。在用户删除文件夹时,我采用递归实现,要删除某个文件夹,先查找它的子文件夹,一直向下查找,直至没有子文件夹,然后再从下往上依次删除文件夹。26 / 394.3.2 文件功能模块文件功能模块,因为我的文件夹并不是真实存在的,所以上传的文件就不能实际的保存在哪个文件夹下,这就存在着要解决文件同名的问题。因为我把所有的文件都放一个文件夹下,那一样文件名的文件是保存不了的,可是逻辑中是允许的,所以我在对文件进行保存时采用了“文件夹 ID_文件名”的方法,顺利解决了
53、这个问题。即使是上传同名的文件,只要不上传在一个文件夹下,就可以被顺利的保存。网络硬盘系统最主要的实现文件的上传和下载功能。在 FLEX 中,使用FileRefrence 可以很方便的在 File 用户计算机和服务器之间上传和下载。通过 FileRefrence 对象还可以取得用户计算机上传的文件的文件属性,包括大小、类型、名称、创建和修改时间等信息。本系统我实现了多文件上传,所以需要用到 FileRefrenceList 对象。上传时需要该对象的 browse()方法,该方法可以打开一个系统对话框,以便用户选择所要上传的文件。FileRefrenceList 对象的 browse()可以选择
54、多个文件。我们可以为 browse()方法设置参数,以便对文件类型进行过滤,这个参数是FileFilter 类的实例数组。上传文件需要 ASP.NET 服务器端代码的支持。当我们需要从服务器端下载文件时,可以使用 FileRefrence 对象的download()方法,该方法可以打开文件下载对话框,让用户提供文件的保存位置并开始从远程 URL 进行下载。4.4 界面设计一个好的系统必须要有一个友好的用户界面。界面是软件与用户交互的最直接的层,界面的好坏将决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成响应的操作,起到向导的作用。设计合理的界面能够给用户带来轻松愉悦的感受和成功
55、的感觉,相反,由于界面设计的失败,再实用强大的功能有可能都得不到用户的认可。所以我在设计主界面时,采用统一的色调,命名准确的按钮,不仅提供了用户需要的各种功能,而且重点突出而一目了然,让用户操作简单、快捷。当用户的操作不符合要求时,就会自动弹出一些提示,提醒用户哪些不合要求,以便用户正确操作。本系统最初的界面是登录界面,整个登录界面十分简单,方便用户操作。特点如下:27 / 39(1)提醒用户输入用户名、密码和验证码,当不正确时会自动弹出提示。点击登录即可顺利进入主界面。(2)当用户没有账号时,提醒用户点击“免费注册” ,即可进入到注册页面进行注册。注册成功后即可再进行登录。登录界面如下(图
56、4-3):图 4-3 登录页面图点击免费注册后进行注册页面,注册页面如下(图 4-4):28 / 39图 4-4 注册页面图用户通过成功注册后,在进行登录即可进入主页面。主页面如下图(图 4-5):图 4-5 主页面图29 / 39第五章 系统测试5.1 注册登录模块测试用例用户进入系统后,会显示登录界面,如果是新用户则点击“免费注册” ,注册用户名为娜,用户为 zhangna126.,密码为 123。即可成功注册,当然要先检测用户名是否存在,而且要保证用户的格式是否正确,密码和确认密码一样。如下图(图 5-1):图 5-1 注册用例图然后用户就可以顺利凭借用户名娜和密码 123 进行登录。而
57、且还要输入正确的验证码,如下图(图 5-2):30 / 39图 5-2 登录用例图5.2 文件夹模块测试用例进入主页面后可对文件夹进行操作,包括新建、删除、重命名、移动文件夹。新建文件夹:用户在选中的文件夹下输入要新建的文件夹名字,点击新建文件夹,然后弹出提示,则表示新建成功。新建后如图 5-3。测试用例:新建文件夹“心情” 。31 / 39图 5-3 新建文件夹用例图删除文件夹:用户选中要删除的文件夹,点击删除,弹出如下提示,选择“ok” ,则可删除,选择“cancel”则取消删除。删除成功后文件夹不再树形目录中显示。测试用例:删除“心情” 。 (如图 5-4) 。图 5-4 删除文件夹用例
58、图重命名文件夹:点击要重命名的文件夹,然后输入命名后的文件夹。测试用例:将文件夹“日志” ,重命名为“记事本” 。 (如图 5-5) 。图 5-5 重命名文件夹用例图移动文件夹:拖动要移动的文件夹。测试用例:将文件夹“我的音乐”移动到“我的图片”下面。如下图(图 5-6) 。图 5-6 移动文件夹用例图5.3 文件模块测试用例进入主页面后可对文件模块进行操作,其中包括上传、下载、删除文件。上传文件:点击主页面上的“上传文件” ,然后打开如下图(图 5-7)所示32 / 39的弹出窗口,点击浏览,选择要上传的文件,如果要同时上传多个文件则选中复选框按钮,则可以同时上传多个文件。上传后主页面如下图
59、(图 5-8)所示,文件成功上传到选中的文件夹“记事本”下。图 5-7 上传文件用例图图 5-8 上传文件成功后用例图下载文件:选中要下载的文件,点击“下载文件” (如图 5-9) ,则弹出对话框让用户选择要保存的位置(如图 5-10) ,点击“保存”后,开始下载,下载成功后显示提示“下载成功” 。33 / 39图 5-9 下载文件用例图图 5-10 下载文件保存路径用例图34 / 39删除文件:文件上传成功后,会在每个文件的后面显示一个条目渲染器“删除” ,点击对应的删除,会弹出确认对话框,点击“ok” ,则成功删除文件。如下图(图 5-11)所示。图 5-11 删除文件用例图5.3 用户管
60、理模块测试用例用户进入主页面后,可以进行相关的用户管理操作,如查看自己的使用空间,修改自己的登录密码等。查看自己使用空间:当用户上传文件后,可以点击主页面上的“查看” ,即可查看自己已使用的空间,如下图(图 5-12)所示。图 5-12 查看使用空间用例图修改密码:用户点击主页面上的“修改密码”按钮,则有弹出窗口出现35 / 39(如图 5-13) ,请求用户输入原密码,和新密码以与确认密码。点击“提交” ,当用户输入的原密码不对或是新密码和确认密码不一样是会弹出提示,当输入正确时,则会显示如下图(5-14) ,则表示密码修改成功。图 5-13 密码修改用例图图 5-14 密码修改成功用例图3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 文化场馆防水修缮合同
- 汽车制造厂外墙翻新腻子施工合同
- 郊区仓库租赁协议
- 桥梁施工平地机租赁合同
- 高速公路修建施工合同
- 电影院彩绘施工合同
- 证券交易所安保人员聘用协议
- 建筑施工合同:城市地下管网改造
- 城市公寓交易合同模板
- 纪念馆真石漆修复合同
- Pep小学英语六年级上册教案-全册
- 2024粤东西粤北地区教师全员轮训培训心得总结
- 国开2023年春《理工英语3》机考网考期末复习资料参考答案
- 蓝田股份会计造假案例
- 电气倒闸操作误操作原因及防范措施
- 江西省暴雨洪水Ⅴ区推理公式法、瞬时单位线法计算表格
- 中英文品牌(商标)授权书模板
- 分解槽、沉降槽制作安装施工方案
- 边坡六棱块施工工艺及方法
- 中国古建筑行业分析报告
- 蜂产品订购合同范本
评论
0/150
提交评论