ImageVerifierCode 换一换
格式:DOCX , 页数:52 ,大小:108.60KB ,
资源ID:24220081      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/24220081.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(网络相册系统的设计与实现.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

网络相册系统的设计与实现.docx

1、网络相册系统的设计与实现网络相册管理系统的设计与实践班级:10211118学号:1021111823姓名:谌文龙教师:杨勇网络相册系统的设计与实现1 引言1.1 选题背景随着时代的进步,社会生产力高速发展,新技术层出不穷信息量急剧膨胀,整个社会已成为信息化的社会人们对信息和数据的利用和处理已经进入自动化、网络化和社会化的阶段。如在查找情报资料、处理银行账目、仓库管理、科研生产等方面,无不需要利用大量的信息资源。因此,如何有效地进行数据信息的管理和利用,已经成为人们普遍关注的课题。随着数码产品的普及,传统的相册已经退出了市场,现在人们一般都用数码相机,照片都存在电脑上,电子相册就是把照片通过扫描

2、仪扫描到电脑里,它具有传统相册无法比拟的优越性:图形、文字、声音、图文并茂的表现手法,随意修改编辑的功能,快速的检索方式,永不褪色的恒久保存特性,以及廉价复制分发的手段。网络相册是电子相册的一种表现形式,它是网站为用户提供的个人相片展示及存放平台。一般的网络相册可以选择“公开”或“私人”的属性,如果相册是设为公开属性,那么其他用户可以查看和分享。因此,为一些中小型网站设计动人的网络相册系统从而给广大用户提供更多的资源,给自己设计一个自己喜欢的网络相册,满足自己的个性需求。1.2 目的和意义 网络相册系统是网站为用户提供的个人相片展示和存放平台,浏览查看他人相册并给予支持。随着互联网的普及和发展

3、,越来越多的人选择了网络,利用网络相册来保存自己的照片,这让网络相册行业迅速的红火起来。 1.3 网络相册系统的研究意义语言是定位于网络应用的程序设计语言。 是一种简单的、面向对象的、强壮的、安全的、可移植的、高性能的、体系结构中立的、解释型的、多线索的、动态的语言。一个类文件中,所有对方法及实例变量的参照均按名进行,并在第一次执行代码时加以分辨。这使得代码更通用,更不易受修改的影响,而仍具高效。网络相册是网站为用户提供的个人相片展示、存放的平台。在网络相册系统中,用户可以上传图片,建立分类相册,设定相册隐私权限,也可以观看、评论其他人的相册与照片,有些相册也支持照片外链,方便用户在其他网站、

4、社区、讨论区分享他们的照片。1.4 网络相册的发展现状网络相册服务也是种很重要的在线存储服务,存储的数据是单一的图象数据。因此,好的存储服务质量依然也是做好在线存储服务的关键,提高存储服务质量是需要有较高的资本投入的,国外的网上服务,多数是付费的,他们依靠忠实的用户和广告商一起来支持网站的运营,尤其对于用户而言,付多少费用直接和享受的服务成正比。2 方案论证2.1 建站思想 应用有一组静态页、和其他相关的组成。每种组件在应用中都有固定的存放目录。应用的配置信息存放在文件中。在发布某些组件(如)时,必须在文件中添加相应的配置信息。2.1.1 应用简介 服务器最主要的功能就是充当 应用的容器。在的

5、规范中,对 应用做了这样的定义:“ 应用由一组、页、类,以及其他可以绑定的资源构成。它可以在各种供应商提供的实现规范的应用中运行。” 应用的主要特征之一就是它与的关系。每个应用有惟一的。当 应用运行时,容器为每个应用创建惟一的对象,它被同一个应用中所有的组件共享。2.1.2 工程过程 工程过程活动贯穿生命周期,从应用概念的生成到开发、发布、不断的精化和升级系统。为了降低开发基于的应用系统的复杂性,需要一个描述开发基于的应用系统阶段的过程模型4。(1) 分析基于的应用系统的需求分析是很重要的活动,需要一个系统而严密的方法。根据特性和应用的特定需求,需要采用更为开放、灵活的需求分析方法。(2) 设

6、计设计不但包括功能设计和性能设计,还要包括页面风格设计,包括页面的主色调、页面框架结构、文字颜色搭配、动画和图片的放置等。有效的站点设计需要注意可用性,要把基于的系统设计成易于导航,吸引人和有用。现在,比较流行的设计方法是以用户为中心的设计。(3) 开发开发过程包括后台数据库程序的开发、页面程序的编写和所有网页的制作。在设计阶段决定的框架基础上,进行具体的页面设计和制作。把内容提供人员的内容连接到具体的页面。(4) 测试基于的应用系统的测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。(5) 发

7、布发布阶段主要是把开发完成,经过初步测试的应用系统传送到站点上,供用户浏览和使用。2.2 系统实现技术2.2.1 服务实现技术目前比较成熟的技术主要有、和。现对它们做一些说明5:是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,和语言的语法,并耦合自己的特性,使开发者能够快速地写出动态产生页面。它支持目前绝大多数数据库。是公司推出的新一代网站开发语言可以在和的支持下,完成功能强大的站点程序。技术特点:是 的缩写,它是的扩展,其目的是简化建立和管理动态网站的工作。在传统的网页文件(*,*)中加入程序片段()和标签,就构成了网页。程序片段可以操纵数据库,重新定向网页以及发送等,实现建立动态网

8、站所需的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了多客户浏览的要求,即使客户浏览不支持,也可以访问网页。在的众多优点之中,其中之一的是它能把编码和业务逻辑有效地分离。通常,负责生成动态页面,业务逻辑由其它可重用的组件(如、)和其他程序来实现,可以通过程序片段访问这些组件。2.2.2 数据库技术 具有单进程愈多线索的体系结构,及 只有一个服务器进程,所有的客户都连接在这个进程上13。但是,该进程又细分为多个并发的线索,他们共享数据缓冲区和时间,能及时捕捉各用户进程发出的存取数据的请求,然后,按一定的调度算法处理这些请求,比操作系统直接对这些请求进行调度

9、高效的多。 的事务处理量大,响应速度快,并能为数百或更多用户维持这种高性能。 在核心层实现了数据完整性控制,包括建表时申明完整性和用触发器机制定义与应用有关的完整性。支持分布式查询与更新。2.3 的工作模式作为容器,有以下几种工作模式。(1)独立的容器在这种模式下,可以作为独立的 服务器,容器作为构成服务器的一部分而存在。独立的容器是的默认模式。(2)进程内的容器 容器分为服务器插件和容器两部分。服务器插件在其他服务器内部地址空间打开一个虚拟机( ),容器在此中运行。如有客户端发出调用的请求,插件获得对此请求的控制并将它传递(使用通信机制)给容器。进程内容器对于单进程、多线程的服务器非常适合,

10、可以提供较高的运行速度,但缺乏伸缩性。(3)进程外的容器 容器分为服务器插件和容器两部分。服务器插件在其他服务器的外部地址空间打开一个,容器在此中运行,如有客户端发出调用的请求,插件获得对此请求的控制并将它传递(采用通信机制)给容器。进程外容器对客户请求的响应速度不如进程内容器,但进程外容器具有更好的伸缩性和稳定性。2.4 运行环境和开发工具的选择 应用程序() 能在网路上开启及连结使用物件,就如同透过连结使用一个本地文件系统( )。 健壮的():由所编写出的程序能在多种情况下执行而具有其稳定性。与 最大不同点是有一个指针模型( )来排除内存被覆盖( )和毁损数据( )的可能性。安全的():是

11、被设计用于网络及分布式的环境中,安全性自必是一个很 重要的考虑。拥有数个阶层的互锁()保护措施,能有效地防止病 毒的侵入和破坏行为的发生。 结构中立的( ):一般而言,网络是由很多不同机型的机器所 组合而成的,和作业系统体系结构均有所不同;因此,如何使一个应用程序可以 在每一种机器上执行,是一个难题。所幸,的编译器产生一种结构中立的目标 文件格式( );这使得编译码得以在很多种处理器中执行。可移植的():原始资料型式的大小是被指定的,例如一直是表示一 个32位元 754浮点运算数字,因绝大多数的都具有此共同特征。程序库属于 系统的一部份,它定义了一些可移植的程序接口,本身具备有很好的可移植性。

12、解释的():解释器能直接地在任何机器上执行位元码(), 因此在进行程序连结时,时间的节省,这对于缩短程序的开发过程,有极大的帮助。高效能的( ):位元码迅速地能被转换成机器码( ), 从位元码转换到机器码的效能几乎与C与没有分别。多线程的( ):语言具有多线程的功能,这对于交互回应能力及 即时执行行为是有帮助的。动态的():比C或语言更具有动态性,更能适应时刻在变的环境, 不会因程序库的更新,而必须重新编译程序。2.3.1 运行环境所必须具备的开发环境:(1) 1.6.0(2) 2000(3) 操作系统为 (4) (5) (6) 5.02.3.2 开发工具 是建立 站点和应用程序的专业工具。它

13、将可视布局工具、应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开发人员和设计人员都可利用它快速创建界面吸引人并且基于标准的站点和应用程序。3 过程论述3.1 需求分析3.1.1 主界面设计访问网络相册程序时首先进入网络相册的主界面,如图1所示。在该页面中共包括功能导航区域、图片展示区域、用户操作区域及版权信息区域4 个部分。其中,功能导航区域、用户操作区域及版权信息区域是固定的内容,用来进行其他操作,而图片展示区域是按类别显示图片信息。 在图片展示区域只显示3种类别的信息,而每一种类别显示3组图片,图片类别按每组最多的图片种类信息进行显示,这些操作需要与数据库存在一定关联

14、。 当运行程序时,首先执行页面,在该页面中访问实现类,通过该实现类转发到另一个页面。 图1 主界面布局图3.1.2 功能描述网络相册系统是网站为用户提供的个人相片展示和存放平台,浏览查看他人相册并给予支持。网络相册系统主要由三大主要模块组成,分别为用户注册操作、相册浏览操作及相片操作,网络相册系统功能结构图如图1所示。 图2 网络相册系统功能结构图该系统的三大模块细分为八个部分,分别如下:(1) 用户注册 用户注册了相关信息才能用此相册系统。(2) 用户登录用户登录时需要输入用户名和密码。若用户登录成功,则用户可以进入相册系统;若用户登录失败,则需重新登录。(3) 分栏显示相册分栏显示相片类别

15、操作时用户登录后才能进行的操作,分别显示图片的类别。(4) 滚动浏览相片用户可以对滚动的图片进行放大或缩小显示,方便用户更清晰的浏览相片。(5) 幻灯片浏览相册将页面中的图片交替显示,并在两张图片切换时插入变换效果。(6) 批量上传相片 用户在相片上传表单中输入完整的信息后,单击“上传”按钮即可。(7) 相片加水印 用户登录成功后可以将自己上传的图片增加透明文字,形成水印的效果。(8) 相片删除 用户登陆成功后,可以将当前的图片删除,单击“删除此相片”即可删除当前相片。3.1.3 系统流程图网络相册系统是网站为用户提供的个人相片展示和存放平台,浏览查看他人相册并给予支持。网络相册系统流程图如图

16、3所示。图3 系统流程图3.2 关键技术3.2.1 对相片上传格式的设置 在计算机文件中,相片的格式多种多样,通常情况下相片可以是“”、“”、“”、“”、“”等格式。因此,用户需要保证上传的图片就是相片所需的图片格式,可以通过源代码解决这一问题,具体如下:(1)将系统中所允许上传的相片格式存储在类型的数据中,并设置这个数组的对象,该对象的名称为。(2)设置相片的固定格式存储在类型的对象,调用类中的()方法,该方法的参数分别为和,主要查询对象内容在数组对象中的位置并将返回结果赋予类型变量,该变量的名称为。(3)判断变量值,如果该变量值为正数,则说明在数组对象中存在,其中正数为具体位置;如果该变量

17、值为负数,则说明在数组对象中不存在,其负数值为-1。3.2.2 动态操作上传表单 动态操作上传表单指的就是用户可以在网页中随意增加或减少表单的个数。如果增加上传表单的数量,则单击“增加”按钮即可,如果要减少表单的数量,则单击“移除”按钮将相应的表单进行移除。 现实动态表单主要是通过脚本语言实现的,当用户单击“增加”按钮时触发()方法。3.2.3 缩略图的生成 在相册管理模块中,相片资料的上传是必不可少的功能,但随着高分辨率相片的普及,上传图片的容量会很大,例如300万像素的相片文件大小基本上是大于600。在很多图片的网页中,图片容量越大打开网页的速度越慢。为了解决这个问题,用户上传图片时可以在

18、类中处理一张大相片并缩小它。3.2.4 相片水印效果 给图片加水印就是在图片加入指定文字。网页中的图片上面写着网站的名称和地址,添加文字的作用就是可以最大限度防止盗用,同时也起到标识相片的功能。3.2.5 图片显示特效 在相册管理模块中,图片的显示特效主要的无间断图片滚动效果和幻灯片浏览图片。4 数据库设计和连接实现4.1 数据库设计 本系统数据库采用 2000 数据库,数据库名称为,在该数据库中只存在一个数据表,该数据表的结构如下表数据表的结构字段名数据类型是否为空是否主键默认值描述(50)系统自动编号(50)相片名称(50)相片大小(50)相片类型(50)相片上传时间(50)相片地址(50

19、)相片上传用户名(50)相片生成水印地址(50)相片缩略图地址4.1.1数据库的完整性和安全性完整性:主要是指数据的正确性和相容性,防止数据库中存在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出所造成的无效操作和出错处理。在这一部分我主要是在信息提交时用脚本控制,并在写入数据库时再次进行检查16。安全性:主是保护数据库防止恶意的破坏和非法的存取,也就是说安全性措施的防范对象是非法用户和非法操作。4.1.2 数据库的连接实现 2312% .*% ()(); :1433; 为你的数据库的 ; ; (); (); * ; (); () % 第一个字段内容为:(1)% 第二个字段内容为

20、:(2)% % (数据库操作成功,恭喜你) (); (); (); % 图5-7 图片编辑页面6 关键技术的实现6.1动态操作上传表单实现动态操作表单主要是通过脚本语言实现的,当用户单击“增加.”按钮时触发()方法,该方法在脚本语言定义的代码如下: () (); 获取表格或其他元素的值 (); 创建元素 (); 创建元素,作为提交的表单 (); 创建元素,作为按钮的表单 ; 创建提交表单中的属性值,该属性值设置为“” ; 创建提交表单中的属性值,该属性值设置为“” ; 创建按钮表单中属性值,该属性值设置为“” 移除.; 创建按钮表单中属性值,该属性值设置为“移除.” () 设置按钮的方法,该方

21、法主要实现的移除表单 (); 移除元素 (); 移除元素 (); 移除元素 (); 添加元素 (); 添加元素 (); 添加元素 6.2缩略图的生成 在相册管理模块中,相片资料的上传是必不可少的功能,但随着高分辨率相片的普及,上传图片的容量会很大,例如300万像素的相片文件大小基本上是大于600。在很多图片的网页中,图片容量越大打开网页的速度越慢。为了解决这个问题,用户上传图片时可以在类中处理一张大相片并缩小它。 将大相片进行缩小的代码如下: ( ) (); 读入文件 ; (); 110; 80; (); ()(,0,0); 绘制缩小后的图 (); 输出到文件流 (); (); (); ( e

22、) (); 在上述代码中,参数表示上传相片的地址,参数表示生成缩略相片的地址。在该方法中,首先将参数转换成对象,构造目标文件,设置的长度和宽度,对进行编码,输出到文件流,最后关闭文件流。6.3相片水印效果给图片加水印就是在图片加入指定文字。网页中的图片上面写着网站的名称和地址,添加文字的作用就是可以最大限度防止盗用,同时也起到标识相片的功能。本实例中,添加水印效果使用一个的()方法,该方法的具体实现代码如下: ( , , ) (); 读取源图片内容 (); 读取图片的信息 (); 读取图片的宽度 (); 读取图片的长度();2D ();(); 设置文字颜色为红色(,0,0); (,200);

23、对文字进行加粗();(,0.5f); 透明(0.3f); 文字的旋转角度(33); 绘制文字的位置(); 通过输出流生成图片内容 (); (); (); (100); (); (); ( e) (); ; ; 7 站点运行情况在网络相册模块的实现中,对于设计中的系统功能模块我基本上都已实现,并且运行正常。在模块的设计上还是有些欠缺。8 结束语在这次设计中,我完成了用户注册、登录,分栏显示相册,滚动浏览相片,幻灯片浏览相片,批量上传相片,相片加水印,删除相片等基本功能。通过这次设计,我对和技术在网络相册模块的应用有了更深一层的认识和应用。在以后设计中可能会遇到一些意想不到的难题,我会在以后的学习

24、和工作中会做进一步的学习和探索,以取得更大的进步。附录:判断用户是否登录 宇晨相册首页 ; 相册首页; | ; 我的相册 我的相册 ; | ; 分类相册 ;|; 手机相册 % 1=()(); 0;( 11)% a 更多 % 2(1()+); 0; ( 22) % a % ; (3) ; (2()3) ( 0 无 其他类别相册 朋友情深;甜蜜爱情;亲亲宝贝;动漫卡通;游戏图案;搞笑贴图;四季印象 宠物精灵;美味佳肴;时尚精品;花草园林;世界军事;数码设备;清风车影 天下奇观;五花八门;壮丽山河;城市风光;名胜古迹;室内景观 分栏显示相片类别 ; ; ; ; ; ; ; ; ; = ; 定义数据库

25、连接类对象并赋值为 = ; 定义一个集合类,并赋值为 = ; 定义一个类型的对象,并赋值为一个空字符串 以用户名为条件,查询用户的,返回是单个用户的数据 ( ) = ; 设置用户的类对象 = (); 将对象进行实例化 = * + + ; 设置查询的语句 = (); 执行查询操作,返回结果是结果集 对结果集对象进行循环数据 () = (); 实例化对象 (); 将数据表中字段内容进行赋值 (); 将数据表中字段内容进行赋值 (); 将数据表中字段内容进行赋值 (); 将数据表中字段内容进行赋值 (); 将数据表中字段内容进行赋值 (); 将数据表中字段内容进行赋值 (); 将数据表中字段内容进行赋值 ( e) (); (); 执行关闭数据库链接的操作 ; 返回以用户名为条件进行查询用户的一组数据 实现用户保存操作,该方法以用户信息类的对象为参数 ( ) = (); 将对象进行实例化 =

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1