1、本科毕业论文(20 届)网络相册管理系统的设计与实现所在学院专业班级 计算机科学与技术学生姓名指导教师完成日期摘要数码产品的普及,传统的相册已经退出了市场,现在人们一般都用数码相机,照片都存在电脑上,电子相册就是把照片通过扫描仪扫描到电脑里,它具有传统相册无法比拟的优越性。随着互联网的发展,人们已经不满足于只是把照片放在自己的电脑里,他们还希望可以将自己拍摄的数码照片传送到网络中,以供网络中的其他朋友分享浏览,充分展现自己的风采,网络相册服务也因此应运而生并日趋盛行。本文就是以此为背景,结合实际,从相关技术简介、需求及概要设计、详细设计及实现、实现效果、测试分析等几个方面详细阐述了一个能够对照
2、片进行网络存储、留言回复等交互功能的网络相册管理系统的设计实现。本网络相册管理系统采用JSP/Servlet等实现技术,以及先进的框架技术配合实现。系统可划分为用户注册/登陆模块、用户信息管理模块、用户相册管理模块、用户相片管理模块、用户留言管理模块个模块。通过对各个功能模块的实现、集成,最终完成的系统实现为用户提供基于网络社区的基本的网络相册服务。关键词:信息化;相册;网络相册 AbstractAlong with the development of the Internet, people are not content to just put the photos on your co
3、mputer, they also hope that can be passed to the network and digital photos of themselves to other friends in the network browsing, to fully demonstrate their elegant demeanour, web albums service also arises at the historic moment and an increasingly popular.This article is based on this background
4、, combined with the actual, from the related technology introduction, demand and general design, detailed design and implementation, the implementation effect, the test and analysis and so on several aspects in detail elaborated the a can carry on the network storage, leave a message back to the pho
5、to the design of the interactive functions such as web albums management system implementation.This web albums management system USES the JSP/Servlet implementation technology, and advanced technology with the framework of implementation. System can be divided into user registration/login module, us
6、er information management module, user management module, user photo album management module, user management module message module. Through the implementation of each function module, integration and finishing system implementation to provide basic web albums service based on network.Keywords: info
7、rmation technology, photo album, web albums目录1 引言 .12 相关技术简介 .22.1 WEB 建站思想 .22.1.1 Java WEB 应用简介 .22.1.2 Web 工程过程 .22.2 WEB 系统实现技术 .32.2.1 WEB 服务实现技术 .32.2.2 数据库技术 .42.2.3 系统数据库连接 .42.3 Tomcat 的工作模式 .42.4 运行环境和开发工具的选择 .52.4.1 运行环境 .52.4.2 开发工具 .53 系统需求及概要设计 .63.1 系统需求描述 .63.2 主界面设计 .63.3 系统模块细分 .73
8、.4 关键技术 .83.4.1 对相片上传格式的设置 .83.4.2 缩略图的生成 .83.4.3 图片显示特效 .93.5 系统数据库设计 .93.5.1 数据库设计 .93.5.2 系统表结构 .93.5.3 数据库的完整性和安全性 .103.5.4 数据库的连接实现 .114 系统实现效果 .124.1 系统公共模块实现效果 .124.1.1 系统首页的整体页面效果 .124.1.2 用户成功登录页面 .124.1.3 用户注册界面效果 .134.1.4 图片留言界面效果 .134.1.5 兴趣社区界面效果 .144.1.6 个人管理界面效果 .144.2 账号管理模块实现效果 .154
9、.3 相册及相片模块实现效果 .164.4 图片留言管理模块实现效果 .195 系统测试报告 .215.1 跨浏览器测试结果及分析 .215.2 用户相册模块测试结果及分析 .215.3 测试结论 .215.4 遇到问题及解决 .226 结论 .23参考文献 .24致谢 .2511 引言相册在很早以前就有了,但是原来的相册是以纸质照片的形式的存在的,它使用人工方式进行管理,工作量大。而且相册还存在不易保管,不方便携带,容易丢失,翻看不方便,占用空间等等问题。后来随着时代的发展,科技的进步,摄影技术的发展,旅游业的进步,照片数量急速增加,使用传统的方式来管理照片显然力不从心,而个人电脑的发展,照
10、片数码化,加速了电子相册的产生与进步,电子相册解决了传统相册不易保管,不方便携带,容易丢失,翻看不方便,占用空间等等问题。而由于网络技术的发展,网络已经渐渐的大众化。在网络冲印也已实现的今天,人们对于电子相册的需求也不再局限于保管相片那么简单。人们更希望把自己的照片同好友分享,希望照片更方便于携带,方便于搜索和查阅。而近年来,随着各式网络社区的出现,web2.0概念的普及,为了提高网站的知名度,用户的黏度,迫使社区类网站不断改进扩充自己的功能。而出于用户对电子相册分享的需要,使得网络相册能和网络社区极好的结合,也使其成为网络社区中一个不可或缺的组成部分。随着互联网的普及和发展,越来越多的人选择
11、了网络,利用网络相册来保存自己的照片,这让网络相册行业迅速的红火起来。可见,网络相册作为一项基础互联网应用,正在随着网络环境的日益成熟以及用户需求的持续增长而得到快速发展。而以交互分享为核心的网络相册2.0理念也成为产品功能改善和用户体验提升的重要标志。而本课题就是在这样的前提下提出的,由于网络相册用户的大量增加,制作一款以web2.0概念为出发点,以良好的用户体验为基础,为用户提供一个以存储、交互为核心,结合了社区模式的平台,而且又兼具一些与众不同的功能的网络相册管理系统,来满足用户的需要,就显得十分必要,也十分具有现实意义和价值了。22 相关技术简介2.1 WEB 建站思想 Java We
12、b 应用有一组静态HTML页、Servlet 、JSP和其他相关的class组成。每种组件在Web应用中都有固定的存放目录。 Web应用的配置信息存放在web.xml文件中。在发布某些组件(如Servlet )时,必须在web.xml文件中添加相应的配置信息。2.1.1 Java WEB 应用简介Tomcat服务器最主要的功能就是充当Java Web应用的容器。在Sun 的JavaServlet规范中,对Java Web应用做了这样的定义:“Java Web应用由一组Servlet、HTML页、类,以及其他可以绑定的资源构成。它可以在各种供应商提供的实现Servlet 规范的 Web应用中运行
13、。 ”Java Web应用的主要特征之一就是它与Context的关系。每个Web 应用有惟一的Context。当Java Web应用运行时,Servlet 容器为每个Web 应用创建惟一的ServletContext对象,它被同一个Web 应用中所有的组件共享。2.1.2 Web 工程过程Web工程过程活动贯穿Web生命周期,从应用概念的生成到开发、发布、不断的精化和升级系统。为了降低开发基于Web 的应用系统的复杂性,需要一个描述开发基于Web的应用系统阶段的过程模型。(1)Web分析基于Web的应用系统的需求分析是很重要的活动,需要一个系统而严密的方法。根据Web特性和Web应用的特定需求
14、,需要采用更为开放、灵活的需求分析方法。(2)Web设计Web设计不但包括功能设计和性能设计 ,还要包括页面风格设计,包括页面的主色调、页面框架结构、文字颜色搭配、动画和图片的放置等。有效的Web站点设计需要注意可用性,要把基于Web 的系统设计成易于导航,吸引人和有用。现在,比较流行的Web 设计方法是以用户为中心的设计。(3)Web开发Web开发过程包括后台数据库程序的开发、页面程序的编写和所有网页的制作。在设计阶段决定的Web 框架基础上,进行具体的页面设计和制作。把内容提供人员的内容连接到具体的页面。(4)Web测试3基于 Web 的应用系统的测试不但需要检查和验证是否按照设计的要求运
15、行,而且还要评价系统在不同用户的浏览器的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。2.2 WEB 系统实现技术2.2.1 WEB 服务实现技术目前比较成熟的技术主要有ASP、PHP 和JSP。现对它们做一些说明:PHP是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法,并耦合PHP 自己的特性,使WEB开发者能够快速地写出动态产生页面。它支持目前绝大多数数据库。JSP是Sun公司推出的新一代网站开发语言JSP可以在 Servlet和JavaBean 的支持下,完成功能强大的站点程序。JSP技术特点:1.简化的页面生成技术。JSP页面用
16、标准的HTML 或XML 命令来处理页面的格式化和布局设计,而用类似HTML、 XML的标记和Java 语言编写的脚本程序生成页面内容。这使得页面形式与页面内容互相独立,非常有利于大型项目的分工合作。2.与Java平台有机集成。JSP技术是 Java 2平台的重要组成部分,JSP使用Java语言作为它的脚本语言。在JSP页面中可以使用几乎所有的Java 组件和Java API,这就能充分发挥出Java语言的强大功能。使用JSP 技术可以创建具有高度可伸缩性和可靠性的Web应用程序。3.硬件平台和服务器无关性。JSP作为 Java家族的一员,秉承了Java技术的“一次编写,随处可用(Write
17、Once,Rum Anywhere)”的特性,可以运行于大多数流行的操作系统平台及Web服务器,这种与服务器硬件和操作系统平台的无关性是JSP相对于其它动态网页技术最大的一个优点。4.功能可扩展性。如同Microsoft 的JSP 技术可以通过ActiveX/COM 组件来扩展功能一样, JSP可以通过JavaBean 和EJB(Enterprise JavaBean)以及自定义的标记来扩展功能。JSP可以通过JDBC,与诸如Oracle、SQL Server这样的大型关系数据库进行连接。JSP提供了一些隐含对象。这些隐含对象在JSP 页面中可以直接引用,而不必首先声明。利用JSP提供的这些隐
18、含对象,可以使脚本功能更加强大,并且编程更加容易、方便。例如,利用request 对象,可以很容易地接收用户在 HTML表单中提交的信息。42.2.2 数据库技术MySQL(通常被读作My-sequel )是一个开放源码的关联式数据库管理系统。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。2.2.3 系统数据库连接JDBC技术是Java DataBase Connectivit
19、y的缩写,它是SUN公司提供的一种支持基本SQL功能的通用的应用程序接口(Application Programming Interface)。它由一组用Java语言编写的类和接口组成。通过这些类和接口,程序开发人员可以在Java语言中方便地建立与数据库的链接,通过执行相应SQL语句,完成对不同数据库的访问。因此,开发人员使用JDBC API可以不必编写一个应用程序来访问Sybase 数据库,又另外编写一个应用程序去访问Oracle数据库,再写一个应用程序访问Microsoft的SQL Server。不但如此,使用Java语言编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上
20、开发不同的应用程序。简单地说,JDBC能完成下列三件事:1.同一个数据库建立连接;2.向数据库建立连接;3.处理数据库返回的结果。2.3 Tomcat 的工作模式Tomcat作为Servlet容器,有以下几种工作模式。(1)独立的Servlet 容器在这种模式下,Tomcat可以作为独立的Java Web服务器,Servlet容器作为构成Web服务器的一部分而存在。独立的 Servlet容器是Tomcat的默认模式。(2)进程内的Servlet容器Servlet容器分为 Web服务器插件和Java容器两部分。Web服务器插件在其他Web服务器内部地址空间打开一个 Java虚拟机(JVM ,Ja
21、va Virtual Machine) ,Java容器在此JVM中运行Servlet 。如有客户端发出调用Servlet 的请求,插件获得对此请求的控制并将它传递(使用JNI通信机制)给Java容器。进程内Servlet 容器对于单进程、多线程的服务器非常适合,可以提供较高的运行速度,但缺乏伸缩性。(3)进程外的Servlet容器Servlet容器分为 Web服务器插件和Java容器两部分。Web服务器插件在其他5Web服务器的外部地址空间打开一个 JVM,Java 容器在此 JVM中运行Servlet ,如有客户端发出调用Servlet的请求,插件获得对此请求的控制并将它传递(采用IPC通信
22、机制)给 Java容器。进程外Servlet 容器对客户请求的响应速度不如进程内容器,但进程外容器具有更好的伸缩性和稳定性。2.4 运行环境和开发工具的选择2.4.1 运行环境所必须具备的开发环境:(1) JDK 1.6.0(2) Mysql(3) 操作系统为 Window7 (4) MyEclipse (5) Dreamweaver(6) apache-tomcat-6.0.182.4.2 开发工具Dreamweaver 是建立 Web 站点和应用程序的专业工具。 它将可视布局工具、应用程序开发功能和代码编辑支持组合为一个功能强大的工具,使每个级别的开发人员和设计人员都可利用它快速创建界面吸引人并且基于标准的站点和应用程序。