网络电子相册系统的设计与实现毕业设计论文.docx
《网络电子相册系统的设计与实现毕业设计论文.docx》由会员分享,可在线阅读,更多相关《网络电子相册系统的设计与实现毕业设计论文.docx(42页珍藏版)》请在冰豆网上搜索。
网络电子相册系统的设计与实现毕业设计论文
武汉工程大学邮电与信息工程学院
毕业设计(论文)
网络电子相册系统的设计与实现
DesignandImplementationofSystemofNetworkElectronicAlbum
作者声明
本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果,除了文中特别加以标注的地方外,没有任何剽窃、抄袭、造假等违反学术道德、学术规范的行为,也没有侵犯任何其他人或组织的科研成果及专利。
与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。
如本毕业设计(论文)引起的法律结果完全由本人承担。
毕业设计(论文)成果归武汉工程大学邮电与信息工程学院所有。
特此声明。
作者专业:
作者学号:
作者签名:
____年___月___日
摘要
网络相册系统是采用ASP.NET开发的一个基于B/S构架的连接数据库的网站。
相比起互联网的发展,电子相册出现的时间不算太长,但却迎合了大多数网民的需求,是一个大有前途的新生事物。
本设计主要讲述了网络电子相册的基本功能和使用ASP.NET、数据库的设计方法。
设计最终达成了非注册用户可以浏览受限制权限的照片,注册用户在前台可以实现包括上传、查看图片、创建相册、用户登录、用户注册、修改密码、修改个人资料等电子相册的基本功能;在后台,管理员可以管理会员、添加和删除相册类型、对照片进行管理、可以发布网站新闻实现和会员进行信息分享。
并且网站能够正常运行,各个页面交互性较好。
在整个设计中基本运用基础的ASP.NET进行功能编程,也运用到了一些前端控件来控制输入信息,对输入信息进行验证,连接数据库使用的ADO.NET技术。
在系统规划中先后用数据流程图、系统功能结构图还有用例图分析了网站所需的各种数据,对网站所要实现的功能和各个模块之间的关系进行了详细的构思。
同时对本系统所需要的代码进行了认真的分析和设计,从而有利于系统的稳定。
详细的展现了系统的各个功能模块并给出了主要功能运行界面图。
本系统的设计主要通过图表来表现,实现主要通过运行的截图还有代码来实现。
使系统科学合理。
关键词:
相册;ASP.NET;B/S架构
Abstract
"WebAlbumssystem"isbasedonusingASP.NETdevelopmentofaB/Sarchitectureconnectingtothedatabasesite.ComparedtothedevelopmentoftheInternet,electronicphotoalbumthereisnotaverylong,buttomeettheneedsofmostusers,isagreat"future"ofthenew.ThisdesignmainlyaboutthebasicfunctionsofelectronicphotoalbumanduseASP.NET,databasedesignmethods.Designedtoreachthefinal,includingupload,viewpictures,createalbums,userlogin,userregistration,changeyourpasswordandotherelectronicalbumofthebasicfunctions.Andthesitetoworkcorrectly,eachpageisbetterinteractivity.InthedesignofthebasicfunctionaluseofbasicASP.NETprogramming,butalsoappliedtoanumberoffront.endcontrolstocontroltheinputinformation,toverifytheinputinformation,connecttothedatabaseusingtheADO.NETtechnology.Planninginthesystemhasadataflowdiagram,thesystemfunctionstructureofthesiterequiredforavarietyofdata,showingindetailthevariousfunctionalmodulesofthesystemandgivesthemainfunctionsofrunninginterfacemap.Thesystemdesignedbythemeansofdrawingchartandtherealizationofitisdisplaybythescreenshotsandcode,whichmakesthesystemmorereasonable.
KeyWords:
Photos;network;ASP.NET;Database;B/SArchitecture
4号黑体
加编页码
第1章绪论
1.1选题背景、目的
随着科技的进步和发展,越来越多的人习惯了信息时代的生活,以电脑为核心的大量信息家电涌入家庭,电子相册的发展也就顺理成章了,而以提供电子相册服务的相册网站也以迅速地发展起来。
相比起互联网的发展,电子相册出现的时间应该不算太长,但是它的出现却迎合了大多数网民的需求,可以说是一个大有“前途”的新生事物。
总的说来电子相册是为用户提供个人相片展示、存放平台的一个网站;一般的电子相册可以选择“公开”或者“私人”属性,如果相册是设为公开属性,其他用户可以查看,达到分享的目的。
除了是提供珍藏相片的平台,电子相册的公开性还为网友创造了一个“巨型的图片库”。
用户将自己原创的图片或者喜爱的图片上传到网站上,与亲友分享、向大众展示。
让生动的图片作为人们在虚拟网络空间上最真实的表达方式之一。
诞生于上世纪末的在线存储技术在美国获得了高速的发展,EVaultInc.、NetMassInc.、AmeriVaultCorp等多家公司都已经提供了内容丰富的在线存储业务。
然而,在中国,在线存储也如互连网的其他新生事物一样,经历了一个从泡沫到沉淀的过程。
前些年的互联网鼎盛的时期,流量就是一切。
容量大小不等的免费网络相册系统、在线空间存储服务相继大张旗鼓地推出,以其免费的空间赠予和安全可靠的口号吸引用户。
一时间,“把家搬到网上去”成了流行话题,尤其是以存储为主的网络相册也迅猛发展起来。
网络相册服务也是种很重要的在线存储服务,把相片管理起来,打破传统的手工管理,是一个完整的MIS系统。
因此,好的存储服务质量依然也是做好在线存储服务的关键,中国的网络相册存储服务还不够成熟,市场潜力很大,未有垄断局面,适合广大互连网英雄们一展身手,赢得自己的市场空间。
现有问题,即是如何更好地保证存储图片数据的使用效率、安全、可靠,在增强用户信任度的同时更好地方便用户利用这些图片存储数据,不仅仅将网络相册定位于仓库式堆积,而是一个图片信息集散地。
传统网络相册在服务上很单一化,主要以存储为主,即使是将传统网络相册存储服务做得不错的网易相册,其目标定位也只是以此吸引更多的用户,而不是赢利。
可是我们广大的网络相册服务提供商,有几个有着网易这么雄厚的资金支持的?
想要获得自身发展,并且给用户提供更好的胜过网易相册的网络相册服务,只有继续探寻更好的发展模式。
将以单一存储式为主的发展模式多元化,以多角度、多功能、多入口的切入点更好地吸引用户并且在多元化中寻求自身盈利,此举不失为一种良性发展模式。
1.2系统的初步调查及现状
电子相册服务是一个新兴行业,但是却并不是一个全新的概念,其实早在几年前,TOM就开办了国内的第一个电子相册。
据艾瑞调研统计,2006年中国活跃电子相册账号数约2500万个,预计未来几年会保持较高速度增长,年新增活跃账号在1000万左右,电子相册用户的渗透率将逐步提高[3].
电子相册用户拥有的电子相册个数分布情况所属报告:
2006年中国电子相册简版报告,42%相册用户表示有2个电子相册,32.1%的用户表示有一个相册,可见电子相册用户中以拥有一个或者两个相册者居多。
电子相册用户使用相册频率情况所属报告:
2006年中国电子相册简版报告查看,关于电子相册使用频率,从统计结果看每周至少登陆一次的用户比例达到75.7%,其中每天都要登陆的有15.6%,每周登陆四次或五次的为23.4%
以上数据都说明,电子相册在网民中的使用率越来越高。
电子相册的市场需求缺口大,如今DV族越来越多,游山玩水、亲朋聚会,都免不了要大“拍”一番;但拍完了照片存在哪里好呢?
放在硬盘上占用空间,刻光盘又麻烦,随着互联网的普及和发展,越来越多的人选择了网络,利用电子相册来保存自己的照片,这让电子相册行业迅速的红火起来。
网络相册系统基于的是Internet这个开放平台,它具有覆盖广泛、用户群庞大、在线存储等优点,亦有安全不佳等缺点。
虽然现在基于Internet的电子相册系统也不少,但是大部分基于微软的ASP(ActiveServerPages)环境开发,存在以下缺陷:
(1)基于微软的ASP技术开发的网上相册系统,安全性比较差,系统性能不高;
(2)静态代码和后台代码的混合使用导致基于ASP的系统较难维护;
(3)ASP技术不适合于大规模的Web项目开发;
(4)在基于ASP的开发中,数据访问技术一般采用ADO(ActiveXDataObject),无法与微软现有的ADO.Net相媲美;
(5)对XML的支持不够。
因为上述的原因,本论文研究在ASP.NET平台上实现网络相册系统,解决了微软的先进技术在一个典型Web应用系统中的实现问题。
1.3需要解决的问题
网络相册系统利用ASP.NET技术配合使用微软的SQLSERVER2005数据库系统开发。
主要解决的问题是用户批量上传图片的功能,这样能提高用户上传图片的速度和效率,用户可以建立自己的相册然后在相册中上传自己的图片。
后台管理员可以对前台所有的相册和相册中的图片进行管理,防止用户上传非法图片信息,发现了非法图片能及时的删除保证系统的安全有序的运行,为用户提供一个界面友好,功能使用的网络电子相册系统网站。
第2章开发环境介绍和需求分析
2.1ASP.NET简介
ASP.Net2.0是把基于通用语言的程序在服务器上运行。
不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译。
ASP.Net2.0构架是可以用Microsoft(R)公司最新的产品VisualS开发环境进行开发,WYSIWYG(WhatYouSeeIsWhatYouGet所见即为所得)的编辑。
这些仅是ASP.Net2.0强大化软件支持的一小部分。
因为ASP.Net2.0是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.Net2.0的Web应用中。
ASP.Net2.0同时也是language.independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。
将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.Net2.0。
ASP.Net2.0使用一种字符基础的,分级的配置系统,使服务器环境和应用程序的设置更加简单。
因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。
这种被称为"ZeroLocalAdministration"的哲学观念使ASP.Net2.0的基于应用的开发更加具体和快捷。
一个ASP.Net2.0的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单[2]。
ASP.Net2.0已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。
即使你现在的ASP.Net2.0应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。
ASP.NET优越性主要体现在以下几个方面:
(1)效率,ASP.NET是建立在.NETFramework之上的,可使用VisualBasic,C++这样的模块化程序设计语言,在第一次执行后不须重新编译就可直接运行,所以速度和效率比ASP这种只能用VBScript或JavaScript这样的非模块化语言来编写的脚本编程语言提高很多;
(2)可重用性。
ASP.NET不再像ASP那样将ASP代码与HTML混合在一起,而是实现代码与内容的完全分离,可重用性强;
(3)代码量小。
ASP对所有要实现的功能通过编写代码来实现,而ASP.NET只须预先说明,就可自动实现,所以,实现同样的功能,ASP.NET要比ASP代码量小的多[3]。
2.2SQLSERVER数据库介绍
本系统采用功能强大的SQLServer来作为后台数据库支撑。
SQLServer就是关系数据库的开发工具,数据库能汇集各种信息以供查询、存储和检索。
SQLServer的优点在于它能使用数据表示图或自定义窗体收集信息,为表、查询、视图、函数和窗体引入了数据透视图和数据透视图视图。
用户可以快捷地执行数据分析并丰富的“数据透视表”和“数据透视图”解决方案;同时它也提供了数据库的存储,与其他网络用户共享数据库。
SQLServer是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。
如上所述,SQLServer可以在一个数据包中同时拥有桌面数据库的便利和关系数据库的强大功能。
1.数据库的概念
数据库是一种存储数据并对数据进行操作的工具。
数据库的作用在于组织传达信息,简而言之,数据库就是信息的集合。
计算机的数据库可以分为两类:
非关系数据库(flat.file)和关系数据库(relational)。
关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,象记录、域等[5]。
2.数据库中的基本术语
(1)表:
是一种按行与列排列的相关信息的逻辑组,类似于工作单表;
(2)字段:
数据库表中的每一列称作一个字段。
表是由其包含的各种字段定义的,每个字段描述了它所含有的数据。
创建一个数据库时,须为每个字段分配一个数据类型、最大长度和其它属性。
字段可包含各种字符、数字甚至图形;
(3)记录:
各个相关的信息存放在表的行,被称为记录。
一般来说,数据库表创建时任意两个记录都不能相同。
表中每一行是一个记录,它包含了特定的信息,而每个记录则包含了相同类型和数量的字段;
(4)键:
键就是表中的某个字段(或多个字段),它(们)为快速检索而被索引。
键可以是唯一的,也可以是非唯一的,取决于它(们)是否允许重复。
唯一键可以指定为主键,用来唯一标识表的每行[5]。
3.SQLServer2005具有如下基本特点
(1)Internet集成。
SQLServer2005增加了对XML(ExtensibleMarkupLanguage,可扩展标记语言)的全面支持,具有构成Web站点数据存储组件所需的可伸缩性、可用性和安全功能。
SQLServer2005程序设计模型与WindowsDNA开发模型集成,用于开发Web应用程序。
此外,SQLServer2005支持EnglishQuery和Microsoft搜索服务等功能,为Web应用程序提供易于使用的查询和强大的搜索功能;
(2)可伸缩性和可用性。
从运行Windows98的便携式电脑,到运行Windows2005数据中心版的大型服务器,都可以使用SQLServer2005数据库引擎。
SQLServer2005企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大Web站点所需的性能级别;
(3)企业级数据库功能。
SQLServer2005关系数据库引擎支持当今各种数据处理不幸所需的功能能够充分保护数据的完整性,同时管理上千个数据库,并把修改数据库的工作量减到最小。
SQLServer2005分布式查询使用中可以引用来自不同数据源的数据。
就好像这些数据是SQLServer2005数据库的一部分,同时分布式查询支持充分保护任何分布式数据更新的完整性,复制功能作用户得以维护多个数据副本,同时确保单独的数据副本同步,并可将一组数据复制到多个移动的用户,使他们自主地工作,然后将他们所做的修改合并回发到服务器;
(4)易于安装、部署和使用。
SQLServer2005撮合了一系列管理和开发工具,这些工具可改进在多个站点上安装、部署和使用SQLServer的过程[7]。
SQLServer2005还支持基于标准的、与WindowsDNA集成的程序设计模型,使SQLServer数据库和数据仓库的使用变得更加简单。
这些功能将使用得以快速交付SQLServer应用程序,使客户只需最少的安装和管理开销可实现这些应用程序。
2.3系统需求分析
2.3.1可行性研究
可行性分析也称为可行性研究,是在调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会等方面进行分析和研究,以避免投资失误,保证新系统的开发成功[2]。
可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
下面将分别从技术、经济、社会三个方面对网络电子相册管理系统的建设进行分析和研究。
1.技术可行性
根据用户提出的系统功能、性能及实现系统的各种约束条件,根据新系统目标来衡量所需的技术是否具备,本系统是一个数据库管理和查询的系统,现有的技术已较为成熟,硬件、软件的性能要求、环境条件等各项条件良好,估计利用现有技术条件应完全可以达到该系统的功能目标。
同时,考虑给予的开发期限也较为充裕,预计系统是可以在规定期限内完成开发的[3]。
由以上分析可知,网络电子相册管理系统的开发在技术上是可行的。
2.经济可行性
学校具有信息化的处理设施,并且拥有支持本系统的应用平台。
因此无需再投入资金购买其他设施。
系统的开发基于本人对程序开发的实践学习而来,学校无需资金投入,并且软件开发过程投入的成本不高,因此开发经费完全可以接受。
3.社会可行性
本系统的社会可行性主要从法律因素、用户使用可行性两方面进行研究。
(1)法律因素方面,本系统是根据网络电子相册管理的实际工作情况开发研制的,是通过大量的调研得出的,系统的软件设计是在独立的环境下完成的,无可供抄袭的软件产品,也不存在盗版侵权的问题,是完全合法的软件。
本系统的开发是依照法律程序明确委托方与开发方的责任,没有违反中华人们共和国的任何法律条款,使用者可以放心使用,因此法律上是有保障的;
(2)用户使用可行性方面,本系统对用户的要求除了需要具备在MicrosoftWindows平台上使用个人电脑的知识外,并不需要特别的技术能力。
使用系统的管理员,需要具备对.net的使用能力,在投入使用前,无需对操作系统的人员进行培训。
这样既减少投入成本又简化了操作环节。
由以上分析可知,本系统具有社会可行性。
2.3.2需求分析
本设计要开发一个简单的相册,对系统提出的需求是实现网站相册系统的核心功能。
开发人员需要对整个网站进行整体的设计与筹划,然后根据所设想要实现的功能来进行网站开发。
因此整个网站的筹备过程是很重要,且是必不可少的。
对网站需求分析这一步进行的好坏,将直接影响到后续的开发过程。
1.总体需求
通过对一般图片类网站与共享类网站所实现的功能分析,本相册需要实现以下功能:
1.电子相册应具备一般的注册登陆,上传照片等功能。
2.匿名访客可以浏览、查看所有公开的相册中的图片。
3.注册用户可以建立多个相册并实现对相应相册的管理。
4.要求网页具有良好的互动性。
2.功能需求
此设计以B/S架构为基础,在.NET框架下开发,使用C#语言开发前台,后台连接数据库。
最终成果形式为网站形式,主要实现匿名访客浏览图片,注册用户上传、管理、储存、展示图片的功能。
其总体分布如图2.1所示。
用户使用界面
图2.1功能需求图
(1)前台功能需求。
网站前台要实现的功能为,访问者可以浏览其他注册用户上传的公开的相册的照片,注册后可以上传自己的相片。
注册用户:
网站相册为用户提供了储存、管理、展示图片的功能。
同时也有自己的私有属性,而要实现私有的属性,用户就必须先注册,拥有自己的独一无二的帐号。
而注册帐号则需要用户提供一些个人信息,如用户名、电话号码、QQ号、E-Mail等。
因此,拥有注册功能是本网站最基本的功能之一。
非注册用户:
建网站主要目的就是要让更多的人认识,同时与更多的人产生交流,提高自己个人的欣赏水平。
而这样一个相册网站就更是这样的了。
因此,除了注册用户可以浏览图片以外,非注册用户也可以进行浏览,同时可以对所浏览的图片发表看法。
只是没有了管理的权限。
上传图片:
要实现展示图片的功能,那么,首先就得上传图片。
因此,上传功能是必不可少的。
页面的交互性:
各页面要有很好的交互性,这样方便访问者浏览;
系统会员的用例图,如图2.2所示。
会员
图2.2系统会员的用例图
(2)后台功能需求。
后台的功能主要是为管理员提供用户信息管理、相册信息管理、和相片信息管理功能,实现对一些用户上传非法内容进行修改和删除。
对用户的管理:
管理员可以对userinfo这张储存用户信息的表进行操作,管理表中存储的用户信息。
对数据的管理:
管理员可以通过对5张数据表的管理,达到对相册、相片、评论管理的目的。
系统管理员进行系统维护的用例图,如图2.3所示。
系统管理员
图2.3管理员系统维护用例图
第3章数据库设计和实现
3.1数据库选择
网络相册管理系统采用微软的SQL2005数据库管理系统作为存储相册系统中用到的数据信息。
3.2数据库设计
3.2.1数据库需求分析
数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
大型数据库的设计和开发是一项庞大的工程,是涉及多学科的综合性技术。
其开发周期长、耗资多、失败的风险也大。
必须把软件工程的原理和方法应用到数据库建设中来。
对于从事数据库设计的专业人员来讲,应该具备多方面的技术和知识。
主要有:
(1)数据库的基本知识和数据库设计论述;
(2)计算机科学的基础知识和程序设计的方法和技术;
(3)软件工程的原理和方法;
(4)应用领域的知识。
在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:
信息世界,数据世界,现实世界。
现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入