基于SSH的大学生联谊交友管理系统设计与实现毕业论文.pdf_第1页
基于SSH的大学生联谊交友管理系统设计与实现毕业论文.pdf_第2页
基于SSH的大学生联谊交友管理系统设计与实现毕业论文.pdf_第3页
基于SSH的大学生联谊交友管理系统设计与实现毕业论文.pdf_第4页
基于SSH的大学生联谊交友管理系统设计与实现毕业论文.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

分类号分类号 学号学号 m201076051 学校代码学校代码 1 0 4 8 7 密级密级 硕士学位论文硕士学位论文 基于基于 ssh 的大学生联谊交友管理的大学生联谊交友管理 系统设计与实现系统设计与实现 学位申请人学位申请人 : 王海波王海波 学 科 专 业学 科 专 业 : 软件工程软件工程 指 导 教 师指 导 教 师 : 刘小峰刘小峰 副副教授教授 答 辩 日 期答 辩 日 期 : 2013.1.12 a thesis submitted in partial fulfillment of the requirements for the degree for the master of engineering the design and implementation of college students making friends management system based on ssh candidate : wang haibo major : software engineering supervisor : assoc. prof. liu xiaofeng huazhong university of science and technology wuhan 430074, p. r. china january, 2013 i 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 摘摘 要要 在当今科学技术迅猛发展的时代,计算机网络遍及了全国各地,通过网络人们 不用出门几乎就能做所有事情,例如:购物、订餐等。这样就滋生了,大批的宅男 宅女,他们与周围的人员沟通很少。在线交友系统的出现,它为想要交友的朋友提 供了便利的平台。通过交友系统有利于那些宅男宅女们间的沟通交流,彼此多一些 了解,扩大朋友圈。 相比其他交友方式,网上交友是更经济安全健康的。现在用电脑上网是很方便 的,上网费用也不是很高。朋友之间,往往通过游玩、吃饭等来增进彼此的感情, 改用上网交友方式,就可以节省一大笔开销 而现在的大部分的交友系统是面向社会人士,没有一个专门的为大学生群体而 开发的交友系统。即使有也以学校为单位分割开来,外校同学很难进去留言交友。 本系统就解决了这个问题,为广大大学生们提供一个便捷的、不受学校地域约束的、 功能完善的交友平台。在这个平台里,可以发表个人爱的宣言(交友条件) 、联谊活 动发起、浏览好友资料等。 本文提出了目前比较流行的基于 ssh (struts 2+hibernate 3+spring 3)的交友管理 系统,它具有强大的可扩展性和可维护性,非常适合中小型企业创建自己的交友平 台。在系统的整体设计中,采取了三层结构:表示层、业务层、持久层。表现层主 要采用较成熟的 struts 2 ,业务层采用轻量级容器 spring 3,持久层采用较为流行的 hibernate 3。 关键词关键词:大学生交友 ssh 框架 mvc 模式 ii 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 abstract with the rapid development of science and technology, the internet has been widespread all around the world. just by clicking the keyboard, people almost can do anything at home without communicating with others, such as doing shopping, reserving dinner. as a result, a large number of “indoors” men and women are created. and a new system called “making-friends online system” appears naturally under this main life style trend. it provides a convenient communication platform for those who just like staying on line. with this platform, they can expand their personal relationship and make more friends! compared with some other way of making friends, the way of making-friends online is much more economical and convenient. it is not only cheap but also convenient. if we can make friends who have the same interests and have the same background by the internet, which will save lots of money for us, especially for college students who have no steady income and large personal relationships. there existed lots of making friends system intended for social people, but still not one for college students. yet some universities have one, but it is only available for the students of the same university. aiming to solve this problem, and provide a platform with a comprehensive function for all the university students, who can freely contact with more out of school students, show and express themselves, especially for the active guys who want to make friends and initiate a fellowship activity without be confined by school authority! this paper puts forward the design and implementation of college students making friends management system based on the current relatively popular ssh (struts 2 + hibernate 3 + spring 3). it has strong expansibility and maintainability, and is very suitable for small and medium enterprises to create their own platform to make friends. in the iii 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 integral design of the system, it adopted a three layers structure: ui layer, business layer and persistence layer. ui layer mainly uses the mature struts 2, business layer uses lightweight containers spring 3, persistence layer uses the popular hibernate 3. key words:college students making friends ssh framework mvc pattern iv 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 目目 录录 摘摘 要要 . i abstract . ii 1 绪论绪论 1.1 课题背景 . (1) 1.2 研究的目的和意义 (1) 1.3 国内外发展状况 (2) 1.4 本文主要研究内容 (3) 2 相关技术介绍相关技术介绍 2.1 struts 介绍 . (5) 2.2 hibernate 介绍 (9) 2.3 spring 介绍 . (11) 2.4 本章小结 . (13) 3 需求分析需求分析 3.1 可行性分析. (14) 3.2 系统的功能需求 (15) 3.3 系统的性能需求 (17) 3.4 系统的数据需求 (17) 3.5 建立系统的约束 (20) 3.6 本章小结 . (20) 4 系统设计与实现系统设计与实现 4.1 数据库设计. (21) 4.2 系统界面设计 (27) v 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 4.3 功能模块设计与实现 (29) 4.4 信息安全设计 (45) 4.5 本章小结 . (46) 5 系统的调试与测试系统的调试与测试 5.1 测试概述 . (47) 5.2 单元测试 . (48) 5.3 集成测试 . (49) 5.4 本章小结 . (50) 6 总结与展望总结与展望 6.1 全文总结 . (51) 6.2 展望 . (51) 致致 谢谢 (52) 参考文献参考文献 (53) 1 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 1 绪论绪论 1.1 课题背景课题背景 在当今科学技术迅猛发展的时代,计算机网络遍及了全国各地,通过网络人们 不用出门几乎就能做所有事情,例如:购物、订餐等。这样就滋生了,大批的宅男 宅女,他们与周围的人员沟通很少。在线交友系统的出现,它为想要交友的朋友提 供了便利的平台。通过交友系统有利于那些宅男宅女们间的沟通交流,彼此多一些 了解,扩大朋友圈。 相比其他交友方式,网上交友是更经济安全健康的。现在用电脑上网是很方便 的,上网费用也不是很高。朋友之间,往往通过游玩、吃饭等来增进彼此的感情, 改用上网交友方式,就可以节省一大笔开销。网上交友不像其他的交友方式,可以 面对面,它一般通过视频、文字、语音展开彼此的交流,这样就可以大大降低犯罪 的几率。网络交友不像聚会、游玩等造成一定的环境污染和资源浪费,它不仅节约 资金,而且还可以避免环境污染,可以说网络交友是一种健康的交友方式。 把互联网作为交友的途径与工具是互联网的基本应用之一。由于网络交友既轻 松自由、又方便快捷、更有着不受地域限制的优势,所以各种交友网站应运而生。 在当前网络服务高速发展的社会里,人们已经开始慢慢接受和认可网上交友这种交 友方式。网络技术的发展为交友模式的革新带来了新的机遇,现代网络交友将结合 现代网络技术、多媒体技术与传统沟通与交流学习的优势,改变传统的面对面的交 友方式,开发出基于 b/s 架构的交友平台系统。 1.2 研究的目的和意义研究的目的和意义 现在的交友系统,大部分都是面向社会人士,没有一个专门的为大学生群体而 开发的系统。即使有也以学校为单位分割开来,外校同学很难进去留言交友。本系 统就解决了这个问题,为广大武汉大学生们提供一个便捷的、不受学校约束的功能 完善的交友平台。在这个平台里,可以发表个人爱的宣言(交友条件) 、联谊活动发 2 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 起、浏览好友资料等。 系统的建设主要目的: (1)打造武汉高校最大、最权威、最诚信的校园交友平台。 (2)通过实用贴心的功能,完善的宣言和联谊模块,为用户交友提供舒心的服 务。 1.3 国内外发展状况国内外发展状况 在中国,计算机网络技术的迅速发展,尤其是在中国人口众多,宅男宅女日益 增多的背景下,中国的网络交友网站应运而生,而且日益增多。到 2012 年初为止, 中国的交友网站已经有几千家了,并且有很多都得到了风投资金1, 国内最大的两家 交友网站世纪佳缘和百合网也已先后上市。交友网站增多,避免不了竞争也会加剧, 优胜劣汰,对于交友网站来说,好的盈利模式是尤为重要的。中国交友网站的盈利 模式主要是通过为商家代理广告和运营商来赚钱。 与国内交友网站相比,国外的交友网站发展相对比较成熟,至少领先国内 3 年。 e harmony 作为美国第一家“推荐制”的网站在 2000 年诞生。2004 年末,它从风险 投资商那里成功拉到了 1.1 亿美元的投资, 成为当年全球拉到风险投资最高的互联网 网站。全球第一家上市的网站是法国的 ,它在 2005 年成功上市。中国的 网站的发展趋势众说纷纭,无论是现在能够想象得到的或是没有想象到的,都有可 能成为互联网明天的现实。 在国外,网民通过交友网站交友,付一定的费用已经得到了广泛的认可。网民 认为,我既然使用了交友网所提供的服务,就有义务付一定的费用,因为交友网站 的运营也是需要一定费用的。这样网站也有资金和动力进一度完善自己的网站服务, 更好的服务给网民。在中国,交友网站也正在向这种方式转变,从不收费到收费, 网站也更加的人性化,更能站在用户的角度考虑。谁能提供更好的产品和服务,谁 就可以获得更多的收益。由于网络交友既轻松自由、又方便快捷、更有着不受地域 限制的优势,在当前网络服务高速发展的社会里,人们已经开始慢慢接受和认可网 上交友这种交友方式。网络技术的发展为交友模式的革新带来了新的机遇,现代网 3 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 络交友将结合现代网络技术、多媒体技术与传统沟通与交流学习的优势,为网民带来 更好的服务。 某个著名咨询公司研究表明:中国近几年来,交友网站可以说是飞速发展,拿 2005 年至 2008 年这个时间段来举例,2005 年使用网上交友服务的网民大概有 4600 万人,到了 2008 年这个人数上升到了近 12000 万人2。该咨询公司预测,随着互联 网的飞速发展,宅男宅女的人数继续增多,网上寻找交友的用户将越来越多,这将 带动网上交友市场规模的持续增长。 据了解可知,会员费和网络广告费是交友网站盈利的主要来源。以中国最大的 交友网站之一的世纪佳缘为例,用户可以免费注册账号 ,可以浏览会员资料,会员 之间可以打招呼、发私信、送花、送礼物等,但这些不是所有的业务都是免费的, 有的业务得需要支付一定的费用如看信、送花、送礼物等,当然广告收入也是它们 盈利的主要来源3。 总之,网络会越来越贴近人们的生活,互联网的应用会越来越广泛,互联经济 会成为重要的产业,将大幅推动全球化经济的发展。互联经济现在仍处于萌芽阶段 才刚刚开始,未来的路还很长很长,互联网的发展需要每一个网络参与者共同努 力、共同促进。 1.4 本文主要研究内容本文主要研究内容 本文提出了目前比较流行的,基于 ssh (struts 2,spring 3,hibernate 3)的交友 管理系统,它具有强大的可扩展性和可维护性,非常适合中小型企业创建自己的交 友平台。在系统的整体设计中,采取了三层结构:表现层、业务层、持久层。表现 层主要采用较成熟的 struts 2 ,业务层采用轻量级容器 spring 3,持久层采用较为流 行的 hibernate 3。 本文主要完成了以下模块的设计与实现: (1) 用户模块:用户登录、用户注册、查看资料、修改资料。 (2) 爱的宣言模块:发布爱的宣言、爱的宣言回复、宣言查找。 (3) 联谊发起模块:发起联谊活动、参与人回复、联谊活动查找。 4 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 (4) 搜索模块:用户查找。 (5) 后台管理模块:用户管理、爱的宣言管理、联谊发起管理、系统右栏管理、 退出系统。 5 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 2 相关技术介绍相关技术介绍 系统的构建离不开技术的支持,下面就对本系统所涉及的一些关键技术,主要 是 struts、hibernate 和 spring 做一下简要的介绍。 spring,struts,hibernate 三者之间的关系如图 2.1 所示。 图 2.1 struts,spring,hibernate 三者之间的关系 2.1 struts 介绍介绍 struts 的目标是提供一个开发 web 应用的开源框架。 作为 apache jakarta 项目的 组成部分出现的 struts 框架,其主要目的是为了节省开发者在开发 web 应用程序时 所消耗的时间(这里开发 web 应用程序时运用的 mvc 设计模型)4, 5,进而大大提 升了开发效率。 下面就简单的介绍下 mvc 设计模型。 mvc 是一种常用的设计模式,其中 m 是模型(model),v 是视图(view),c 是控制(controller)。mvc 设计模式的工作原理如图 2.2 所示。 6 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 struts 主要有两个版本,struts 1 和 struts 2,由于本文主要是应用的是 struts 2, 所以这里对 struts 1 不做介绍, 主要介绍一下 struts 2。 struts 2 是由 struts 1、 webwork 两个经典的 mvc 框架发展而来。它是一个非常优秀的 mvc 框架。与传统的 struts1 相比,struts 2 允许我们使用普通的、一般性的 java 对象作为 action,这对于编程人 员来说,是一个很好的设计,因为我们熟悉面向对象编程的思想,把一切都当作对 象看待。另外,action 该的 execute()方法不在与 servlet api 耦合,因而易于测试; 支持更多的视图技术等6-8。 struts 框架的工作原理如图 2.3 所示。 浏览器: web 容器将为每一个来自于浏览器的 http 请求,都创建一个 request 对象,并 产生一个 response 对象与 request 请求响应。 控制器(controller) : client ie or netscape controller actionservlet business logic action model javabean or ejb view jsp http request action form http response struts-config.xml 图 2.3 struts 的工作原理 view(视图) controller(控制) model(模型) 图 2.2 mvc 的工作原理 7 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 控制器接收来自浏览器的请求,在 struts 框架中,控制器是由 servlet 来充当的, 它主要是接收来自于浏览器客户端(ie 或 netscape)的请求。控制器(controller) 的配置工作主要是在文件 struts-config.xml 中进行配置。 模型(model) : model 主要是对客户端发出请求, 调用业务逻辑对其进行处理。 struts 主张把 “做 什么” (action)和“如何做” (业务逻辑)相分离。 视图(view) :由图 2.3 可以看出,view 主要是由 jsp 技术来完成。在这里, 利用 struts 所提供的机制,让我们创建视图更加的轻松方便。 struts 框架组件如图 2.4 所示。 图 2.4 struts 框架组件 在 struts 中, 用户的请求一般以*.do 或*.action(是.do 还是.action 主要看 struts 中 的配置)作为请求服务名,所有的*.do 或*.action 请求均被指向 actionsevlet。然后编 写相应的 action 类, 通过重写它们中的 execute()方法来调用业务逻辑 service 中的方 法来完成相应的操作9。 struts 框架还提供了如 xml 处理、国际化提示等很多好用且实用的对象,这让 我们开发 web 应用更加的便捷10-12。 struts 的异常自动处理机制 1)编程式异常处理 8 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 (1) 就是利用编程的方式,对通过 try catch 语句所截获异常,通过编程的方 式手工进行处理。 (2) 在编程式异常处理的时候,我们可以使用 struts 的消息处理机制(前面所 讲的内容)来对这些异常信息进行处理 2)自动异常处理机制 (1) 我们不通过手工编写代码的方式处理异常,即在 action 中不对 trycatch 方法捕捉的异常进行处理,而是将该异常抛出给我们的 struts 框架进行处理。 (2) 自动异常处理机制,机器是不会自动处理 ,要想达到自动的效果,我们 需要在配置文件中指示 struts 怎么去做, 怎么去处理那些被抛出的异常, 从而达到自 动处理的效果。 struts 优缺点 优点: struts 是开源而且是比较成熟的框架。由于是开源的,这就让我们能够对其内部 实现机制有更加深入的理解。 可以提高软件系统的开发效率;适合于开发一些比较大的项目,可以降低架构 的复杂性。 struts 的标记库 taglib 是十分好用的,它能帮助我们更容易编写代码,提高开发 效率。 struts 的页面导航是个很好用的部分,只需依据一个配置文件,我们就能够了解 整个系统的脉络。 缺点: 开发者所有写的程序与 struts 框架紧密关联, 这就导致测试不能脱离框架而单独 进行,造成了一定的耦合性。 taglib 标签库虽说是 struts 的一大优势,但对于刚刚入门学习的人而言,如果把 我不好,可能会打乱网页编写的习惯。 mvc 的 controller 控制器被 struts 分成了三个部分,这样做使结构更加清晰的 9 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 同时,增加了系统的复杂度,给想要学习 struts 技术进行 web 开发的人员带来了一 定的难度。 2.2 hibernate 介绍介绍 hibernate 是一个优秀的 java 组件,它采用对象/关系数据库映射(orm)模式 实现了数据持久化层 13-15。 orm 的英文全名是 object-relational mapping。它的实 现思想就是将关系数据库中表的数据映射成为对象,以对象的形式展现。这种技术 从本质上来说,就是将数据从一种形式转换到另外一种形式16, 17。这样就带来了许 多好处, 开发人员利用 hibernate 框架就可以按照 java 面向对象的思想进行持久层的 开发,把对数据库的操作转化为对这些对象的操作,很方便的进行数据的增加、删 除、修改、查找等操作,而无需关心数据库的中心思想18-20。 在 hibernate 中,对象有临时状态、持久状态和游离状态三种状态。 三种状态的关系如图 2.5 所示。 图 2.5 hibernate 三种状态关系 由图 2.5 可以看到,当通过 new 语句 new 一个实体对象后,这个对象处于临时 状态了。此时该对象被放在内存中,与数据库中的记录没有任何关联,程序结束, 它就会消失。如果没有变量对此对象的引用,它将被 java 虚拟机(jvm)回收。 当调用 session 的 save() 或 saveorupdate()方法时,可以将临时状态对象与数据 库相关联,并将对象数据插入数据库中,这个时候该对象就转变成持久化状态对象。 10 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 当一个 session 执行 get()或 load()、createquery()之后,对象处于持久化状态。 处于持久化状态的对象在数据库中就会有相应的记录与之对应,并拥有持久化 标识。如果此时对该对象执行 delete()方法, 对象在数据库中所对应的数据将被删除, 该对象不再与数据库记录相关联。此时,对应的持久化对象就变成临时对象了。 当一个 session 执行 close()或 clear()、evict()之后,其对应的 session 实例被关闭, 此时持久化对象将变成游离对象,但它仍具有数据库识别符,只是已不在 hibernate 持久层的管理之下。当游离对象重新关联到 session 上时,执行 update()、 saveorupdate()、lock()、merge()或 replicate()方法,它将再次转变成持久状态。 hibernate 的功能特点: (1) 数据库无关性; (2) 缓存的管理,提供一、二级缓存。 (3) 提供对类、属性、集合的延时加载。 (4) 一些特殊的功能:分页处理。 (5) 各种类型的检索方式:sql、hql、qbc。 (6) 针对不同的数据库而言,提供各种不同的主键生成方式。 hibernate 优缺点21, 22 优点: (1) 对象/关系数据库映射(orm), 这种机制让使用者只需操作数据库对象,就 能进行数据的增删改查操作,无需关心数据库的中心思想。 (2) 简洁的 hql 编程。 (3) 移植性会很好。 缺点: (1) 配置太灵活,使编程人员需要考虑的事项很多。 (2) hibernate 做为 orm 有一些固有的缺陷, 比如批量 insert、 update 和 delete 的效率问题。 (3) 由于使用了映射文件,处理多态检索复杂。 (4) 针对单一对象简单的增删查改,适合于 hibernate,而对于批量的修改,删 除,不适合用 hibernate,这也是 or 框架的弱点。 11 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 2.3 spring 介绍介绍 spring 是一个优秀的软件框架, 它能够提供 java ee 应用各层 (表现层、 业务层、 持久层)的解决方案,而不仅仅局限于某一层。虽然 spring 自己就能解决 javaee 各 层的开发,但是它也不排外,能和现有的很多优秀框架进行无缝的整合。我们的系 统就利用 spring 整合 struts 和 hibernate 开发的。spring 框架的核心它的核心技术是 控制反转(ioc)23,或者叫依赖注入(di)和面向方面的编程(aop)24, 25。 spring 体系结构的分层架构如图 2.6,由图我们可以看到,spring 体系结构由 spring core、spring context、spring aop、spring dao、spring orm、spring web 和 spring mvc 等 7 个模块组成26-29。下面就对各个模块主要功能做一下简要的介 绍。 图 2.6 spring 体系结构 核心模块(spring core):它是 spring 框架的核心容器,提供 spring 框架的基 本功能,是 spring 其他模块的基础。在模块中包含最重要的 beanfactory 类,它是 spring 的核心类,负责岁 javabean 的配置与管理。它采用采用 factory 模式实现 ioc 容器,即依赖注入,将类和类之间依赖关系解除,通过配置的方式对依赖关系进行 描述。 spring 上下文(spring context):spring context 是一个配置文件,扩展了 beanfactory 的功能,如它添加了事务处理、国际化、资源装载、透明装载以及数据 校验等,为 spring 框架提供上下文信息。 12 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 spring aop30, 31: spring 集成了所有 spring aop 的功能。 通过事务管理可以使 任意 spring 管理的对象 aop 化。 spring dao: 在这里使用了 dao 组件对原始的 jdbc 数据库操纵进行了再次封 装。从而允许程序使用面向对象的方式来操作数据库,保证整个软件开发过程以编 程人员比较熟悉的面向对象的方式进行, 它的实现类主要是借助 spring 的 dao 支持 来实现。 spring orm:spring 框架中提供了很多 orm 框架,提供了 orm 的对象关 系工具,例如 hibernate,它采用对象/关系数据库映射(orm)模式实现了数据持久 化层。orm 的实现思想就是将关系数据库中表的数据映射成为对象,以对象的形式 展现。这样就方便了编程人员按照 java 面向对象的思想对数据库进行操作。 spring web 模块:spring web 模块建立在 spring context 基础之上,提供了 servlet 监听器的 context 和 web 应用的 context,对现有 web 框架,如 struts 等提供 了集成。 spring mvc 框架:spring web mvc 模块建立在 spring core 之上,这使它能拥 有 spring 框架的所有特性,能适应多种视图、模板技术、国际化和验证服务,实现 控制逻辑和业务逻辑清晰分离。 spring 体系结构特点: (1) 分层框架,spring 中所有模块构建在 spring core 模块之上。 (2) 每个模块可合可单(可以组合到一起使用,也可以单独使用) 。 spring 完善的框架,开发人员可以自由的选择;它的不排外,与其他流行框架 整合得天衣无缝,有“粘合剂”之称。spring 与其他框架相比,优势有: (1) 方便解耦,简化开发 (2) aop 编程的支持 (3) 声明式事务的支持 (4) 方便程序的测试 (5) 方便集成各种优秀框架 (6) 降低 java ee api 使用 13 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 2.4 本章小结本章小结 本章主要介绍了系统开发过程中所用的一些相关技术,主要是 struts、hibernate 和 spring。首先作为 apache jakarta 项目的组成部分出现的 struts 框架,其主要目的 是为了节省开发者在开发 web 应用程序时所消耗的时间,提高开发效率。然后对 struts 的工作原理和 struts 的优缺点进行了详细的讲解。接着介绍了 hibernate,采用 对象/关系数据库映射(orm)模式实现了数据持久化层,是一个优秀的 java 组件。 然后针对 hibernate 中对象的三种状态和 hibernate 的功能特点及其优缺点给予了介 绍。最后介绍了 spring,它能够提供 java ee 应用各层(表现层、业务层、持久层) 的解决方案,而不仅仅局限于某一层。它的框架的核心它的核心技术是控制反转 (ioc),或者叫依赖注入(di)和面向方面的编程(aop),然后介绍了 spring 体系结构特点及其优势。 14 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 3 需求分析需求分析 需求分析主要是对要解决的问题进行详细的分析,弄清楚问题各方面的要求。 针对本系统,下面就从系统开发的可行性、系统功能需求、系统性能需求、系 统的数据需求等几个方面进行分析。 3.1 可行性分析可行性分析 可行性分析32的主要目的是用尽可能少的代价,在尽可能最短的时间里确定该 项目工程在现有技术基础上是否能够开发,是否值得去开发,它未来的效益如何, 最后给项目开发的决策者提供做与不做的理论依据33。 下面主要从经济可行性和技术可行性两个方面进行分析。 3.1.1 经济可行性经济可行性 经济可行性主要是从系统开发成本和效益两方面进行分析。该系统从设计到实 现基本上是有一个人完成,所用的一些开发工具 dreamweaver8.0、myeclipse9.0、 tomcat5.5、mysql 数据库、navicat 等都是免费版或试用版本,所以这就为系统开发 减少了一大笔开销。 系统所实现的功能,基本能满足用户需求,对于后期系统维护,所需精力和费 用也不会很多。本系统可以说节约资金又节约人力,经济代价不大。 3.1.2 技术可行性技术可行性 技术可行性研究是根据现有的和准备充实的设备条件与技术力量来分析系统在 技术上实现的可能性,弄清现有技术条件能否保证顺利地完成系统的开发工作。在 技术可行性研究过程中,主要是采集系统性能、可靠性、可维护性和可生产性等方 面的信息,分析实现系统功能所需要的各种设备、技术、方法和过程,分析项目开 发在技术方面可能负担的风险以及技术问题对开发成本的影响等。 在技术上,系统利用 dreamweaver8.0 进行页面设计和布局,利用 myeclipse9.0 15 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 进行编码,服务器采用了 tomcat。对于数据库方面,系统采用了 mysql。然后,系 统使用了 ssh(struts 2+spring 3+hibernate 3)三大免费开源框架的结合使用, 它可 以看成工具,也是中间件34。利用这些技术已经能完全满足开发要求。 3.2 系统的功能系统的功能需求需求 大学生联谊交友管理系统是为大学生提供联谊交友的平台,在这个平台里,可 以发表个人爱的宣言(交友条件)、联谊活动发起、浏览好友资料等。大学生联谊 交友管理系统功能结构图如图 3.1 所示。 图 3.1 大学生联谊交友管理系统功能结构图 3.2.1 前台前台 在前台的功能需求上,可以分为以下几个部分: (1)用户登录 网站用户用个人注册的帐号、密码登录到网站。网站检测用户登录的帐号、密 码并给予其相应的权限对网站进行操作。 (2)用户注册 大学生联谊交友管理系统 用 户 模 块 爱 的 宣 言 联 谊 发 起 用 户 登 录 用 户 注 册 资 料 修 改 交 友 宣 言 回 复 爱 的 宣 言 爱 的 宣 言 查 找 用 户 管 理 联 谊 发 起 查 看 资 料 参 与 人 回 复 联 谊 活 动 查 找 后 台 管 理 系 统 右 栏 管 理 退 出 系 统 用 户 查 找 搜 索 模 块 联 谊 发 起 管 理 爱 的 宣 言 管 理 16 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 用户将个人的信息存储到交友网站的数据库中,以成为本交友的正式用户。 (3)用户修改个人信息 把已存储的用户信息用一个网页显示出来,方便用户对个人信息进行更新。 (4)会员搜索 用户可以自己设定条件,来搜索满足条件的会员。 (5)爱的宣言 在这里,用户可以自由的发布爱的宣言、查看已有宣言列表、回复宣言等 (6)联谊发起 在这里,用户可以作为活动的组织人,当然也可以替别人发布联谊活动。用户 也可以查看联谊列表、回复联谊等 3.2.2 后台后台 在后台的功能需求上,可以分为以下几个部分: (1)用户管理 管理员对已注册用户资料的查看、修改。对用户权限的设定。对当期在线用户 的查看、删除、权限设定等 (2)爱的宣言管理 管理员对已有爱的宣言的查看、修改、删除和推荐。已有宣言回复的查看、删 除等操作。 (3)联谊发起管理 管理员对已有联谊发起活动的查看、活动的修改、删除和推荐。联谊活动回复 的查看、删除等操作。 (4)系统右栏管理 管理员通过设定各信息表的 commend 属性来决定用户的推荐、爱的宣言推荐、 联谊发起推荐。 (5)退出系统 管理员退出大学生联谊交友管理系统。 17 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 3.3 系统的性能需求系统的性能需求 大学生联谊交友系统的特性要求联谊交友系统应该具有以下几个主要特点: (1)多样性 大学生联谊交友系统在设计时应该以用户为系统设计的中心。随着互联网的迅 速发展,网络上有很多形形色色的交友网站,用户上网交友就有很多的选择,所以, 交友系统除了在设计时考虑低成本以外,还必须在系统页面的美观,吸引人眼球上 下工夫,做到功能多样化,操作简单。 (2)易维护 后台管理员能够很方便地对已注册用户资料的查看,修改。对用户权限的设定。对 当期在线用户的查看、删除、权限设定等;对已有爱的宣言的查看、修改、删除和推荐。 已有宣言回复的查看、删除等操作;对已有联谊发起活动的查看、活动的修改、删除、 推荐。联谊活动回复的查看、删除等操作。通过设定各信息表的 commend 属性来决定 用户的推荐、爱的宣言推荐、联谊发起推荐;退出大学生联谊交友管理系统。 (3)安全性 系统的信息安全,我们应该尤为注意。大家都知道,在内部测试中,系统中的 所有 bug 不可能被服务器软件的开发商一一全都找出来,即使正式软件发布了,也 只有一小部分漏洞被发现,随着系统的运行,还会有很多安全问题出现,所以我们 应该时刻提高警惕,应对可能出现的 bug。同时,网站服务器的操作系统的补丁要 及时更新打好,进行安全权限的设置,并安装好防火墙,杀毒软件等,定时对数据 进行备份。 (4)可扩展 交友系统的用户从事着各种行业,他们的需求各不相同,系统在设计时应充分 考虑到后期用户需求的不断变化,应对各种可能。 3.4 系统的数据需求系统的数据需求 3.4.1 系统的数据需求系统的数据需求 (1)数据的准确性和实时性 18 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 保证用户输入数据的准确,如果数据输入有误,系统应该给予提示。实时的追 踪用户输入,并及时的对用户输入的数据进行处理。 (2)数据的一致性与完整性 网站的数据是平台所共享的,所以一定要有专门的人员维护数据的一致性,并 严格的约束数据的完整性,对不符合完整性要求的数据,应给予提示要求输入完整 的数据或是拒绝接收。 3.4.2 系统的数据字典系统的数据字典 数据词典定义了与系统有关的所有数据元素,并依照字典排列的顺序将它们一 一组织起来,对所有的输入、输出、中间计算和存储成分,用户和分析员有共同的 认识35。 在数据词典的每一个词条中应包含以下信息: (1) 名称: 主要是指数据对象的名字 (当然也包括控制项、 数据存储或外部实体) 。 (2) 别名或编号。 (3) 描述:描述内容或数据结构等。 (4) 何处使用:在哪个地方使用了该词条。 数据元素组成数据的方式(关系算符):顺序、选择、重复和可选。 (1) 顺序:按照规定好的次序连接两个或多个分量。 (2) 选择:从两个及以上元素中选择一个可能的元素。 (3) 重复:指定的分量重复的次数,可以是零次也可以是多次。 (4) 可选:分量可以选择也可以不选择。 系统中的数据元素如下: 名字:用户信息 别名: 描述:用户的个人信息,用于对用户的确认和更新。 定义:用户信息=用户名+密码+真实姓名+性别+学校+专业+qq+电话+电 子邮箱+地址+自我描述 位置:输入到用户浏览器(前台) 19 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 名字:宣言回复信息 别名: 描述:对已有宣言进行回复。 定义:宣言回复信息=回复人+回复内容+回复日期 位置:输入到用户浏览器(前台) 名字:爱的宣言信息 别名: 描述:发布爱的宣言。 定义:爱的宣言信息=宣言标题+宣言内容+发布人+发布时间 位置:输入到用户浏览器(前台) 名字:管理员信息 别名: 描述:管理员的个人信息,用于对管理员的确认和更新。 定义:管理员信息=用户名+密码 位置:输入到管理员浏览器(后台) 名字:联谊回复信息 别名: 描述:对已有联谊活动进行回复。 定义:联谊回复信息=回复人+回复内容+回复日期 位置:输入到用户浏览器(前台) 名字:联谊发起信息 别名: 描述:发布联谊活动信息。 定义:联谊发起信息=联谊活动标题+活动内容+发起人+发布人+发布时 间 位置:输入到用户浏览器(前台) 20 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 3.5 建立系统的约束建立系统的约束 大学生联谊交友管理系统是基于 b/s 的,不可避免的要受到 b/s 结构的约束。 系统在设计、实现以及之后的实施应该服从人力、资金、时间的约束和技术发展规 律的约束。 3.5.1 人力、资金、时间的约束人力、资金、时间的约束 校园交友系统实施的目标就是要为网络用户提供进行在线交流的网络平台,其 开发过程中也要考虑到人力、资金和时间的约束。因此,在设计中,重点是交友系 统中良好的人机交互界面,能提供给用户以优质高效的服务。 3.5.2 技术发展规律的约束技术发展规律的约束 计算机技术和产品的发展日新月异,将会给信息处理带来更多的手段,同时也 会带来更加丰富的信息表达形式。 3.6 本章小结本章小结 本章主要从系统开发的可行性、系统功能需求、系统性能需求、系统的数据需 求等几个方面进行分析。首先从系统的经济可行性和技术可行性两个方面进行了系 统可行性分析,然后进行系统功能需求分析,前台主要实现了用户登录、用户注册、 爱的宣言、联谊发起、会员搜索功能,后台实现了用户管理、宣言管理、联谊管理、 右栏管理功能,再然后,系统性能需求方面主要从多样性、易维护、安全性、可扩 展四方面进行了描述,最后对系统数据需求和系统的约束进行了说明。 21 华华 中中 科科 技技 大大 学学 硕硕 士士 学学 位位 论论 文文 4 系统设计系统设计与实现与实现 大学生联谊交友管理系统主要利用现有的软硬件设施,开发一个具有良好人机 交互界面,功能比较完备的联谊交友平台,为交友提供系统支持。 在系统的整体设计中,我们采取了三层结构:表现层、业务层、持久层36, 37。 表现层(the ui layer),主要使用 jsp 技术和 struts 2 所提供的标签库实现的。本 系统在表现层与业务层之间提供了一个 controller(控制器),用来负责用户请求和 业务层的交互38。 业务层(the business layer),主要利用 spring 3 技术来实现的。该层主要负责实 现系统的业务逻辑处理功能。该层是其它层相互作用的接口。通过 service 对 dao 组件的封装,action 直接调用 service,而使表现层和持久层不直接的联系。 持久层(the persi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论