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

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

引言第1页(共46页)网络相册管理系统的设计与实践班级:10211118学号:1021111823姓名:谌文龙教师:杨勇基于Java网络相册系统的设计与实现第2页(共46页)2网络相册系统的设计与实现1引言1.1选题背景随着时代的进步,社会生产力高速发展,新技术层出不穷信息量急剧膨胀,整个社会已成为信息化的社会人们对信息和数据的利用和处理已经进入自动化、网络化和社会化的阶段。如在查找情报资料、处理银行账目、仓库管理、科研生产等方面,无不需要利用大量的信息资源。因此,如何有效地进行数据信息的管理和利用,已经成为人们普遍关注的课题。随着数码产品的普及,传统的相册已经退出了市场,现在人们一般都用数码相机,照片都存在电脑上,电子相册就是把照片通过扫描仪扫描到电脑里,它具有传统相册无法比拟的优越性:图形、文字、声音、图文并茂的表现手法,随意修改编辑的功能,快速的检索方式,永不褪色的恒久保存特性,以及廉价复制分发的手段。网络相册是电子相册的一种表现形式,它是网站为用户提供的个人相片展示及存放平台。一般的网络相册可以选择“公开”或“私人”的属性,如果相册是设为公开属性,那么其他用户可以查看和分享。因此,为一些中小型网站设计动人的网络相册系统从而给广大用户提供更多的资源,给自己设计一个自己喜欢的网络相册,满足自己的个性需求。1.2目的和意义网络相册系统是网站为用户提供的个人相片展示和存放平台,浏览查看他人相册并给予支持。随着互联网的普及和发展,越来越多的人选择了网络,利用网络相册来保存自己的照片,这让网络相册行业迅速的红火起来。1.3网络相册系统的研究意义Java语言是定位于网络应用的程序设计语言。Java是一种简单的、面向方案论证第3页(共46页)3对象的、强壮的、安全的、可移植的、高性能的、体系结构中立的、解释型的、多线索的、动态的语言。一个Java类文件中,所有对方法及实例变量的参照均按名进行,并在第一次执行代码时加以分辨。这使得代码更通用,更不易受修改的影响,而仍具高效。网络相册是网站为用户提供的个人相片展示、存放的平台。在网络相册系统中,用户可以上传图片,建立分类相册,设定相册隐私权限,也可以观看、评论其他人的相册与照片,有些相册也支持照片外链,方便用户在其他网站、社区、讨论区分享他们的照片。1.4网络相册的发展现状网络相册服务也是种很重要的在线存储服务,存储的数据是单一的图象数据。因此,好的存储服务质量依然也是做好在线存储服务的关键,提高存储服务质量是需要有较高的资本投入的,国外的网上服务,多数是付费的,他们依靠忠实的用户和广告商一起来支持网站的运营,尤其对于用户而言,付多少费用直接和享受的服务成正比。2方案论证2.1WEB建站思想JavaWeb应用有一组静态HTML页、Servlet、JSP和其他相关的class组成。每种组件在Web应用中都有固定的存放目录。Web应用的配置信息存放在web.xml文件中。在发布某些组件(如Servlet)时,必须在web.xml文件中添加相应的配置信息。2.1.1WEB应用简介Tomcat服务器最主要的功能就是充当JavaWeb应用的容器。在Sun的JavaServlet规范中,对JavaWeb应用做了这样的定义:“JavaWeb应用由一组Servlet、HTML页、类,以及其他可以绑定的资源构成。它可以在各种供应商提供的实现Servlet规范的Web应用中运行。”JavaWeb应用的主要特征之一就是它与Context的关系。每个Web应用有惟一的Context。当JavaWeb应用运行时,Servlet容器为每个Web应用创建惟一的ServletContext对象,它被同一个Web应用中所有的组件共享。2.1.2Web工程过程基于Java网络相册系统的设计与实现第4页(共46页)4Web工程过程活动贯穿Web生命周期,从应用概念的生成到开发、发布、不断的精化和升级系统。为了降低开发基于Web的应用系统的复杂性,需要一个描述开发基于Web的应用系统阶段的过程模型[4]。(1)Web分析基于Web的应用系统的需求分析是很重要的活动,需要一个系统而严密的方法。根据Web特性和Web应用的特定需求,需要采用更为开放、灵活的需求分析方法。(2)Web设计Web设计不但包括功能设计和性能设计,还要包括页面风格设计,包括页面的主色调、页面框架结构、文字颜色搭配、动画和图片的放置等。有效的Web站点设计需要注意可用性,要把基于Web的系统设计成易于导航,吸引人和有用。现在,比较流行的Web设计方法是以用户为中心的设计。(3)Web开发Web开发过程包括后台数据库程序的开发、页面程序的编写和所有网页的制作。在设计阶段决定的Web框架基础上,进行具体的页面设计和制作。把内容提供人员的内容连接到具体的页面。(4)Web测试基于Web的应用系统的测试不但需要检查和验证是否按照设计的要求运行,而且还要评价系统在不同用户的浏览器的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。(5)Web发布Web发布阶段主要是把开发完成,经过初步测试的Web应用系统传送到Web站点上,供用户浏览和使用。2.2WEB系统实现技术2.2.1WEB服务实现技术目前比较成熟的技术主要有ASP、PHP和JSP。现对它们做一些说明[5]:PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法,并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。它支持目前绝大多数数据库。JSP是Sun公司推出的新一代网站开发语言JSP可以在Serverlet和方案论证第5页(共46页)5JavaBean的支持下,完成功能强大的站点程序。JSP技术特点:JSP是JavaServerPagedd的缩写,它是Servlet的扩展,其目的是简化建立和管理动态网站的工作。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页。Java程序片段可以操纵数据库,重新定向网页以及发送E-mail等,实现建立动态网站所需的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了多客户浏览的要求,即使客户浏览不支持Java,也可以访问JSP网页。在JSP的众多优点之中,其中之一的是它能把HTML编码和业务逻辑有效地分离。通常,JSP负责生成动态HTML页面,业务逻辑由其它可重用的组件(如Servlet、JavaBean)和其他Java程序来实现,JSP可以通过Java程序片段访问这些组件。2.2.2数据库技术SQLServer具有单进程愈多线索的体系结构,及SQLServer只有一个服务器进程,所有的客户都连接在这个进程上[13]。但是,该进程又细分为多个并发的线索,他们共享数据缓冲区和CPU时间,能及时捕捉各用户进程发出的存取数据的请求,然后,按一定的调度算法处理这些请求,比操作系统直接对这些请求进行调度高效的多。SQLServer的事务处理量大,响应速度快,并能为数百或更多用户维持这种高性能。SQLServer在核心层实现了数据完整性控制,包括建表时申明完整性和用触发器机制定义与应用有关的完整性。支持分布式查询与更新。2.3Tomcat的工作模式Tomcat作为Servlet容器,有以下几种工作模式。(1)独立的Servlet容器在这种模式下,Tomcat可以作为独立的JavaWeb服务器,Servlet容器作为构成Web服务器的一部分而存在。独立的Servlet容器是Tomcat的默认模式。(2)进程内的Servlet容器基于Java网络相册系统的设计与实现第6页(共46页)6Servlet容器分为Web服务器插件和Java容器两部分。Web服务器插件在其他Web服务器内部地址空间打开一个Java虚拟机(JVM,JavaVirtualMachine),Java容器在此JVM中运行Servlet。如有客户端发出调用Servlet的请求,插件获得对此请求的控制并将它传递(使用JNI通信机制)给Java容器。进程内Servlet容器对于单进程、多线程的服务器非常适合,可以提供较高的运行速度,但缺乏伸缩性。(3)进程外的Servlet容器Servlet容器分为Web服务器插件和Java容器两部分。Web服务器插件在其他Web服务器的外部地址空间打开一个JVM,Java容器在此JVM中运行Servlet,如有客户端发出调用Servlet的请求,插件获得对此请求的控制并将它传递(采用IPC通信机制)给Java容器。进程外Servlet容器对客户请求的响应速度不如进程内容器,但进程外容器具有更好的伸缩性和稳定性。2.4运行环境和开发工具的选择Java应用程序(Applications)能在网路上开启及连结使用物件,就如同透过URLs连结使用一个本地文件系统(LocalFileSystem)。健壮的(Robust):由Java所编写出的程序能在多种情况下执行而具有其稳定性。Java与C/C++最大不同点是Java有一个指针模型(PointerModel)来排除内存被覆盖(OverwritingMemory)和毁损数据(CorruptingData)的可能性。安全的(Secure):Java是被设计用于网络及分布式的环境中,安全性自必是一个很重要的考虑。Java拥有数个阶层的互锁(Interlocking)保护措施,能有效地防止病毒的侵入和破坏行为的发生。结构中立的(ArchitectureNeutral):一般而言,网络是由很多不同机型的机器所组合而成的,CPU和作业系统体系结构均有所不同;因此,如何使一个应用程序可以在每一种机器上执行,是一个难题。所幸,Java的编译器产生一种结构中立的目标文件格式(ObjectFileFormat);这使得编译码得以在很多种处理器中执行。可移植的(Portable):原始资料型式的大小是被指定的,例如float一直是表示一个32位元IEEE754浮点运算数字,因绝大多数的CPU都具有此共同特征。程序库属于系统的一部份,它定义了一些可移植的程序接口,Java本身具备有很好的可移植性。方案论证第7页(共46页)7解释的(Interpreted):Java解释器能直接地在任何机器上执行Java位元码(Bytecodes),因此在进行程序连结时,时间的节省,这对于缩短程序的开发过程,有极大的帮助。高效能的(HighPerformance):Java位元码迅速地能被转换成机器码(MachineCode),从位元码转换到机器码的效能几乎与C与C++没有分别。多线程的(Multithreaded):Java语言具有多线程的功能,这对于交互回应能力及即时执行行为是有帮助的。动态的(Dynamic):Java比C或C++语言更具有动态性,更能适应时刻在变的环境,Java不会因程序库的更新,而必须重新编译程序。2.3.1运行环境所必须具备的开发环境:(1)JDK1.6.0(2)SQLServer2000(3)操作系统为WindowXP(4)Eclipse(5)Dreamweaver(6)Tomcat5.02.3.2开发工具Dreamweaver是建立Web站点和应用程序的专业工具。它将可视布局工具、应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开发人员和设计人员都可利用它快速创建界面吸引人并且基于标准的站点和应用程序。3过程论述3.1需求分析3.1.1主界面设计访问网络相册程序时首先进入网络相册的主界面,如图1所示。在该页面中共包括功能导航区域、图片展示区域、用户操作区域及版权信息区域4个部分。其中,功能导航区域、用户操作区域及版权信息区域是固定的内容,用来进行其他操作,而图片展示区域是按类别显示图片信息。在图片展示区域只显示3种类别的信息,而每一种类别显示3组图片,图基于Java网络相册系统的设计与实现第8页(共46页)8片类别按每组最多的图片种类信息进行显示,

1 / 40
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功