logo资料库

网络相册管理系统.doc

第1页 / 共65页
第2页 / 共65页
第3页 / 共65页
第4页 / 共65页
第5页 / 共65页
第6页 / 共65页
第7页 / 共65页
第8页 / 共65页
资料共65页,剩余部分请下载后查看
1 引言
2 相关技术简介
2.1 J2EE开发平台概述
2.1 Hibernate框架概述
2.2.1 什么是ORM
2.2.2 Hibernate框架介绍
2.3 Spring框架概述
2.3.1 IoC和AOP
2.3.2 Spring框架介绍
2.4 Struts框架概述
2.4.1 MVC模式
2.4.2 Struts框架介绍
2.5 DWR框架概述
2.5.1 Ajax技术
2.5.2 DWR框架简介
2.6 Applet技术概述
2.6.1 Applet的工作原理
2.6.2 Applet的安全机制
3 系统需求及概要设计
3.1 系统需求概要
3.1.1 什么是Web2.0
3.1.2 系统需求描述
3.2 系统模块细分
3.2.1 用户注册/登陆模块
3.2.2 用户信息管理模块
3.2.3 用户相册管理模块
3.2.4 用户相片管理模块
3.2.5 用户评论管理模块
3.2.6 用户好友分类管理模块
3.2.7 用户好友管理模块
3.2.8 用户分享管理模块
3.2.9 用户站内信模块
3.2.10 用户留言管理模块
3.2.11 用户搜索模块
3.2.12 排行榜模块
3.3 系统架构设计
3.3.1 系统层次划分
3.3.2 系统服务器部署架构
3.4 系统数据库设计
3.4.1 系统E-R图
3.4.2系统表结构
4 系统详细设计及实现
4.1 系统主要类及功能
4.1.1 cn.edu.hdu.applet包
4.1.2 cn.edu.hdu.entity包
4.1.3 cn.edu.hdu.dao包
4.1.4 cn.edu.hdu.service包
4.1.5 cn.edu.hdu.struts包
4.1.6 cn.edu.hdu.filter包
4.1.7 cn.edu.hdu.tag包
4.1.8 cn.edu.hdu.upload包
4.1.9 cn.edu.hdu.util包
4.2 多服务器架构的关键实现
4.2.1 自定义标签技术的应用
4.2.2 多线程的图片上传加速
4.3 在线图片编辑的设计实现
4.3.1 Java图像处理算法
4.3.2 图像处理的具体实现
4.3.3 Applet与服务器间数据交换实现
4.4 框架技术的整合实现
4.4.1 Hibernate与Spring的整合实现
4.4.2 Struts与Spring的整合实现
4.4.3 DWR与Spring的整合实现
5 系统实现效果
5.1 系统公共模块实现效果
5.2 相册及相片模块实现效果
5.3 好友管理模块实现效果
5.4 站内信及留言模块实现效果
6 系统测试报告
6.1 测试平台配置
6.2 测试结果及缺陷分析
6.2.1 跨浏览器测试结果及分析
6.2.2 用户相册模块测试结果及分析
6.2.3 用户相片模块测试结果及分析
6.2.4 用户评论模块测试结果及分析
6.2.5 用户好友及分类模块测试结果及分析
6.2.6 禁用脚本测试结果及分析
6.3 测试结论
7 结论
致谢
参考文献
本 科 毕 业 设 计 (2010 届) 题 目 网络相册管理系统 学 院 计算机学院 专 业 软件工程 班 级 学 号 学生姓名 指导教师 完成日期
诚 信 承 诺 我谨在此承诺:本人所写的毕业论文《网络相册管理系统》均系 本人独立完成,没有抄袭行为,凡涉及其他作者的观点和材料,均作 了注释,若有不实,后果由本人承担。 承诺人(签名): 年 月 日
杭州电子科技大学本科毕业设计 摘 要 随着互联网的发展,人们已经不满足于只是把照片放在自己的电脑里,他们 还希望可以将自己拍摄的数码照片传送到网络中,以供网络中的其他朋友分享浏 览,充分展现自己的风采,网络相册服务也因此应运而生并日趋盛行。 本文就是以此为背景,结合实际,从相关技术简介、需求及概要设计、详细 设计及实现、实现效果、测试分析等几个方面详细阐述了一个能够对照片进行网 络存储、在线搜索、在线编辑的网络相册管理系统的设计实现。 本网络相册管理系统采用 JSP/Servlet、Applet 等实现技术,以及 Struts、 Hibernate、Spring、DWR 等先进的框架技术配合实现。系统可划分为用户注册/登 陆模块、用户相册管理模块、用户相片管理模块、用户好友管理模块、用户分享 管理模块、用户留言管理模块、用户搜索模块等 12 个模块。通过对各个功能模块 的实现、集成,最终完成的系统除了为用户提供基于网络社区的基本的网络相册 服务外,还为用户提供相片的在线编辑功能。另外,在系统的架构上,采用多服 务器的架构方式,实现基本的负载均衡,提升系统性能。 关键词:网络相册;在线照片编辑;框架技术;多服务器架构
杭州电子科技大学本科毕业设计 ABSTRACT With the development of the Internet, people are not satisfied with just store their photos in their computer, they also hope to upload the digital photos they take to the network, so they can share it with other friends on the network, let their friends to view, and show their own style, that is why a web albums service had come out, and the increasingly popular. technical brief, This article is written within this context, combined with the practical, from the relevant requirements and outline design, detailed design and implementation, achieve results, test analysis,etc, chapters it details a network capable photo storage, online searching, online editing web albums management system’s design and implementation. This web albums management system is developed with JSP/Servlet, Applet and other implementation techniques,as well as Struts, Hibernate, Spring, DWR and other advanced framework technical. The system can be divided into user registration/login module, albums management module, photo management module, friends management module, sharement management module, user feedback management module, user searching module, etc, such 12 modules. With the implementation and integration of each functional module, finally, the system provide users with a basic social networking based web albums service with online photo editing features.And in architecture, the system using multi-server architecture which means to achieve the basic load balancing to improve system’s performance. Key words : web albums; online photo editing; framework technical; multi-server architecture
杭州电子科技大学本科毕业设计 目 录 1 引言.............................................................................................................................1 2 相关技术简介.............................................................................................................2 2.1 J2EE 开发平台概述......................................................................................... 2 2.1 Hibernate 框架概述..........................................................................................2 2.3 Spring 框架概述...............................................................................................3 2.4 Struts 框架概述................................................................................................ 4 2.5 DWR 框架概述................................................................................................ 5 2.6 Applet 技术概述...............................................................................................5 3 系统需求及概要设计.................................................................................................7 3.1 系统需求概要...................................................................................................7 3.2 系统模块细分...................................................................................................7 3.3 系统架构设计.................................................................................................14 3.4 系统数据库设计.............................................................................................16 4 系统详细设计及实现...............................................................................................20 4.1 系统主要类及功能.........................................................................................20 4.2 多服务器架构的关键实现.............................................................................28 4.3 在线图片编辑的设计实现.............................................................................31 4.4 框架技术的整合实现.....................................................................................37 5 系统实现效果...........................................................................................................43 5.1 系统公共模块实现效果.................................................................................43 5.2 相册及相片模块实现效果.............................................................................45 5.3 好友管理模块实现效果.................................................................................50 5.4 站内信及留言模块实现效果.........................................................................51 6 系统测试报告...........................................................................................................53 6.1 测试平台配置.................................................................................................53 6.2 测试结果及缺陷分析.....................................................................................54 6.3 测试结论.........................................................................................................57 7 结论...........................................................................................................................58 致谢.................................................................................................................................59 参考文献.........................................................................................................................60
杭州电子科技大学本科毕业设计 1 引言 相册在很早以前就有了,但是原来的相册是以纸质照片的形式的存在的,它 使用人工方式进行管理,工作量大。而且相册还存在不易保管,不方便携带,容 易丢失,翻看不方便,占用空间等等问题。 后来随着时代的发展,科技的进步,摄影技术的发展,旅游业的进步,照片 数量急速增加,使用传统的方式来管理照片显然力不从心,而个人电脑的发展, 照片数码化,加速了电子相册的产生与进步,电子相册解决了传统相册不易保管, 不方便携带,容易丢失,翻看不方便,占用空间等等问题。 而由于网络技术的发展,网络已经渐渐的大众化。在网络冲印也已实现的今 天[1],人们对于电子相册的需求也不再局限于保管相片那么简单。人们更希望把自 己的照片同好友分享,希望照片更方便于携带,方便于搜索和查阅。 而近年来,随着各式网络社区的出现,web2.0 概念的普及,为了提高网站的 知名度,用户的黏度,迫使社区类网站不断改进扩充自己的功能。而出于用户对 电子相册分享的需要,使得网络相册能和网络社区极好的结合,也使其成为网络 社区中一个不可或缺的组成部分[2]。 甚至还有一些社区模式的网站直接把网络相册作为其唯一的主体功能。其中 比较国外比较著名的有 Picasa、Flickr 等,而国内比较著名的有巴巴变、又拍等[3]。 有调查表明,2006 年美国网络相册用户数量达到 6500 万,预计在未来几年网 络相册用户数会继续保持平稳增长。在 2005 年网络相册用户数占美国网民总数的 29%。2006 年中国活跃网络相册账号约 2500 万个,预计未来四年会保持较高速度 增长,年新增活跃账号在 1000 万左右[4]。 可见,网络相册作为一项基础互联网应用,正在随着网络环境的日益成熟以 及用户需求的持续增长而得到快速发展。而以交互分享为核心的网络相册 2.0 理念 也成为产品功能改善和用户体验提升的重要标志。 而本课题就是在这样的前提下提出的,由于网络相册用户的大量增加,制作 一款以 web2.0 概念为出发点,以良好的用户体验为基础,为用户提供一个以存储、 分享照片为核心,结合了社区模式的平台,而且又兼具一些与众不同的功能的网 络相册管理系统,来满足用户的需要,就显得十分必要,也十分具有现实意义和 价值了。 1
杭州电子科技大学本科毕业设计 2 相关技术简介 本系统是基于 J2EE 平台开发的,实现过程中 Hibernate、Spring、Struts、DWR 框架和 Applet 技术,本章将简要介绍这些技术,框架的特点,以及其在本系统环 节中所起的作用。 2.1 J2EE 开发平台概述 J2EE(Java 2 Platform,Enterprise Edition)是一种用来开发分布式企业软件应 用系统的平台[5],其核心是一组技术规范与指南,其中所包含的各类组件、服务架 构及技术层次,均有共通的标准及规格,让各种依循 J2EE 架构的不同平台之间, 存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,导致 企业内部或外部难以互通的窘境。 它提供了一个多层次的分布式应用模型和一系列开发技术规范。多层次分布 式应用模型是指根据功能把应用逻辑分成多个层次,每个层次支持相应的服务器 和组件,组件在分布式服务器的组件容器中运行,如 Servlet 组件在 Servlet 容器上 运行,EJB(Enterprise Java Beans)组件在 EJB 容器上运行,容器间通过相关的协 议进行通讯,实现组件间的相互调用。遵从这个规范的开发者将得到行业的广泛 支持,使企业级应用的开发变得简单、快速。 2.1 Hibernate 框架概述 2.2.1 什么是 ORM ORM(Object/Relation Mapping,对象-关系映射)是一种为了解决面向对象与 关系数据库存在的互不匹配的现象的技术,可以减少重复的数据访问层的代码, 减少系统的耦合,便于维护。ORM 是随着面向对象的软件开发方法发展而产生的。 面向对象的开发方法中对象和关系数据是业务实体的两种表现形式,业务实体在 内存中表现为对象,在数据库中表现为关系数据。ORM 系统一般以中间件的形式 存在,主要实现程序对象到关系数据库数据的映射。 2.2.2 Hibernate 框架介绍 Hibernate 框架是一个数据持久层框架,是一种实现 ORM 的工具,它对 JDBC (Java Data Base Connectivity,Java 数据库连接)进行了轻量级的对象封装,使程 序员可以使用对象编程思想来操作数据库。 Hibernate 框架用 XML(Extensible Markup Language, 可扩展标记语言)配置 文件的形式来定义 Java 对象和数据表之间的映射关系,透明的提供对象与关系数 据库的映射,以统一的接口方式支持多种数据库。Hibernate 对 JDBC 的优秀封装, 通过使用 HQL(Hibernate Query Language,Hibernate 查询语言)完成 Java 对象和 2
杭州电子科技大学本科毕业设计 关系型数据库之间的转换[6],在很大程度上简化了对数据的查询,加快了开发的效 率。而且 Hibernate 中提供了一个简单而直观的 API(Application Programming Interface,应用程序编程接口),用于对数据库所表示的对象执行查询。避免了访 问数据库时大量代码的出现。使得开发人员可以从通常的数据持久化编程事务解 放出来。 虽然 Hibernate 有诸多好处,但是 Hibernate 的劣势也是很明显的,只提供模型 层的支持,但是却无法实现业务流程控制,这也使得系统不能单一的基于 Hibernate 框架开发。故而,系统选择 Hibernate 这个成熟的 ORM 框架进行持久层开发,实 现对象与数据库关系之间的交互,而在其他层次使用其他框架与之整合。 2.3 Spring 框架概述 2.3.1 IoC 和 AOP IoC(Inversion of Control,控制反转)又称为 DI(Dependence Injection,依赖 注入)。IoC 的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不 直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器 负 责 将 这 些 联 系 在 一 起 。 其 原 理 是 基 于 OO 设 计 原 则 的 The Hollywood Principle:Don't call us, we'll call you(好莱坞理论:别找我,我会来找你的)。也就 是说,所有的组件都是被动的,所有的组件初始化和调用都由容器负责。组件处 在一个容器当中,由容器负责管理。 AOP (Aspect Oriented Programming , 面 向 方 面 的 编 程 ), 可 以 说 是 OOP (Object-Oriented Programing,面向对象编程)的补充和完善[7]。OOP 允许你定义 从上到下的关系,但并不适合定义从左到右的关系。而 AOP 技术则恰恰相反,它 利用一种称为“横切”的技术,剖解开封装的对象内部,并将那些影响了多个类 的公共行为封装到一个可重用模块。简单地说,就是将那些与业务无关,却为业 务模块所共同调用的逻辑或责任封装起来,便于减少系统的重复代码,降低模块 间的耦合度,并有利于未来的可操作性和可维护性。 AOP 把软件系统分为两个部分:核心关注点和横切关注点。业务处理的主要 流程是核心关注点,与之关系不大的部分是横切关注点。横切关注点的一个特点 是,他们经常发生在核心关注点的多处,而各处都基本相似。AOP 的作用在于分 离系统中的各种关注点,将核心关注点和横切关注点分离开来。正如 Avanade 公 司的高级方案构架师 Adam Magee 所说,AOP 的核心思想就是“将应用程序中的 商业逻辑同对其提供支持的通用服务进行分离。” 2.3.2 Spring 框架介绍 Spring 是一个开源框架,它由 Rod Johnson 创建。它是为了解决企业应用开发 的复杂性而创建的。Spring 是一个轻量级的 IoC 和 AOP 的容器框架[8]。 Spring 的核心就是它的轻量级 IoC 容器的功能。通过 Spring 提供的 IoC 容器, 3
分享到:
收藏