Spring+Struts2+Hibernate的运动社区的设计与实现 下载本文

基本Spring+Struts2+Hibernate的运动社区的设计与实现

Oracle9i作为第一套完整、简单的软件基层结构,展现了前所未有的可扩展性、高性能和应用程序所需要的稳定性,是专门为因特网系统提供的新一代智能型集成应用软件。Oracle9i增强了Oracle的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。它提供了基于角色(Role)分工的安全保密管理。在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。加上它有许多优秀的前台开发工具如 Power Build、Sql*Forms、Visia Basic 等,可以快速发生成基于客户端PC 平台的应用程序,并具有良好的移植性。

Oracle9i数据库在物理上是存储于硬盘的各种文件。它是活动的,可扩充的,随着数据的添加和应用程序的增大而变化。在逻辑上是由许多表空间构成。主要分为系统表空间和非系统表空间。非系统表空间内存储着各项应用的数据、索引、程序等相关信息。

让我们来看一下以上Oracle9i的新的特性:

Oracle9i有超过400项的新特性及技术改进,有了PL/SQL Native Compile,为提高PL/SQL的执行速度,用户在不需要修改PL/SQL语句,只需对现有的PL/SQL语句进行编译,这样根本上改变了Oracle9i之前PL/SQL需要边解释边执行的状况,Oracle9i 将Java XML Developer Kit (XDK) 预装到Oracle9i中,开发者能够轻松地访问基于W3C的功能,这些功能在Oracle9i中生成,操纵,转换灭存储XML格式的数据。此外Oracle9i也推出新的数据类型XMLtype,方便并加速对XML数据的存取。

Compressed Bitmap Index 压缩位图索引是Oracle9i的专利的技术,它所带来的优势包括:性能极大的提高查询的执行时间显著加快,特别是对那些在索引栏中包含多种条件或选择了大量行的查询尤其如此。相对较少的存储花费,它对位图索引的存储不是动态生成的,不会产生巨大的存储量。由于在查询执行中采用了压缩的位图索引,提高了查询执行的性能。降低了维护需求和费用。

Oracle9i自动地维护和使用一次生成的索引。修改数据后是自动的对索引进行相应的调整。Bitmap Join Index (位映射或位图连接索引)允许用户对两个或两个以上表的连接Join建立位映射索引,大大提高了表连接的查询速度。

2.2 数据库的设计

数据是信息系统处理的对象,数据库设计是系统设计的重要组成部分。 2.2.1 概述

数据库设计是在需求分析的基础上,如何对应用系统所设计的数据进行分类、描述、关联和存取的一种技术。数据库设计通常是在一个通用的DBMS支持下进行的,对于一个给定的应用环境,构造最优的数据模式,使之能够有效的存储数据,满足各种用户的需要。数据库是信息系统的核心和基础,它将大量的数据按照一定的模型组织起来,提供存储、维护和检索数据的功能。只有对数据库进行合理的逻辑设计和有效的物理设计,才能开发出完善而高效的信息系统,用户才能方便、及时核准取得从数据库中

1

基本Spring+Struts2+Hibernate的运动社区的设计与实现

获取所需的信息。 2.2.2 数据库设计过程

对于信息管理系统,数据基本上都是使用数据库进行管理。数据库设计是对保存管理系统数据的数据库结构进行设计,对整个系统的开发具有非常重要的作用。数据库的设计通常分为6个阶段,分别是需求分析、概念结构设计、逻辑结构设计、物理设计、数据库实施阶段、运行和维护阶段[11]。

1.需求分析

需求分析包括收集和分析用户对数据的需求,它是数据库设计的第一阶段,也是非常重要的阶段。这一阶段收集到的基础数和数据流图是概念结构设计的基础。

2.概念结构设计

概念结构设计是独立于数据库管理系统的逻辑结构,它也独立于具体的机器。E-R模型是描述概念结构设计的有利工具。

3.逻辑结构设计

逻辑结构设计是将概念结构转换为某一数据库管理系统(DBMS)所支持。 4.物理设计

物理设计是指数据库在物理设备上的存储结构和存取方法,它依赖于具体的计算机系统。但随着计算机存储设备性能的提高和数据库管理系统技术的发展,已经减少了对存储空间、分块原则和块因子等因素的考虑。

5.数据库实施阶段

该阶段的主要工作是利用DBMS系统提供的数据定义的语言创建数据库表,向数据库中录入数据。

6.运行和维护阶段

如果是新建的数据库,还应包括试运行,其主要工作包括运行应用程序、对数据库执行各种操作、测试应用程序的功能和系统性能指标。维护阶段的主要工作是对数据安全性的控制、数据备份和恢复、性能的监视、分析和改进,以及数据库表结构的修改和调整。

2.3 软件工程的概述

软件工程是指导计算机软件和维护的工程学科,采用工程的概念、原理和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,这就是软件工程[19]。软件工程的七条基本原理如下[12]。

1.阶段的生命周期计划严格管理。 2.坚持进行阶段评审。 3.实行严格的产品控制。 4.采用现代程序设计技术。

1

基本Spring+Struts2+Hibernate的运动社区的设计与实现

5.结果应能清楚的审查。 6.开发小组的人员应该少而精。

7.承认不断改进软件工程实践的必要性。 2.3.1 软件的定义

软件定义阶段的任务是确定软件开发工程必须完成的总目标,即确定工程的可行性;导出实现工程目标应该采用的策略及系统必须完成的功能;估计完成该工程需要的资源和成本,制定工程进度表。通常,软件定义阶段又进一步划分为三个子阶段,即问题定义、可行性研究和需求分析[13]。

1.问题的定义

问题定义阶段必须回答的关键问题是:“要解决的问题是什么?”如果不清楚问题是什么就试图解决,显然是盲目的,只会白白浪费时间和金钱,最终得出的结果很可能是毫无意义的,扼要的写出对问题的理解、工程目标和规模的书面报告,改正和理解不准确的地方,得出一份双方都满意的有关问题定义的文档。

2.可行性研究

本阶段要回答的关键问题是:“上一个阶段确定的问题有行的通的解决办法吗?”为了回答这个问题,需要进行一次大大压缩和简化了的系统分析和设计过程,也就是在较抽象的高层次上进行分析和设计。可行性研究应该比较简短,因为这个阶段不是具体解决问题,而是研究问题的范围,探索可行的解决办法,并确定是否值得解决。可行性研究阶段应该导出系统的高层逻辑模型,并且在次基础上更准确、更具体的确定工程规模和目标,更精确的估计系统的成本和效益,仔细的完成成本、效益分析。

3.需求分析

这个阶段的任务是确定“为了解决这个问题,目标系统必须做什么?”确定目标系统应该具备哪些功能。软件开发人员在需求分析阶段必须和用户密切配合,充分交流信息,以得出经过用户确认的完整准确的系统逻辑模型,但不必考虑实现的细节。 2.3.2 软件的开发

开发阶段的任务是具体设计和实现在前一个时期定义的软件。它通常由总体设计、详细设计、编码和单元测试、综合测试等四个子阶段组成[14]。

1.总体设计

本阶段必须回答的问题是:“概括的说,究竟如何解决这个问题?”即确定解决问题的策略及实现目标系统所需要的各种程序。通常要用层次图或结构图来描绘软件的结构。

2.详细设计

总体设计阶段应以比较抽象的方式提出解决问题的办法。详细设计阶段的任务就是把解法具体化,也就是回答关键问题:“应该怎样具体的实现这个系统呢?”这个阶段的任务还不是编写程序,而是设计出程序的详细规格说明。

1

基本Spring+Struts2+Hibernate的运动社区的设计与实现

3.编码和单元测试

这个阶段的关键任务是编写正确的容易理解、容易维护的程序模块。程序员应该根据目标系统的性质和实际环境,选择适当的程序设计语言,把详细设计的结果翻译成用选定的语言书写的程序,并且仔细测试编写出来的每个程序模块。

4.综合测试

这个阶段的关键任务是通过各种类型的测试使软件达到预定要求。 2.3.3 软件的维护

维护时期的主要任务是使软件能够持久的满足用户的需求。包括软件在使用过程中发现错误时应该加以改正;环境改变时应该修改软件以适应新的环境;用户有新的要求时应当及时改进软件以满足用户的新需要。

2.4 需求分析

管理系统开发的起点是需求分析,这是整个系统开发中最重要的一步,它决定着开发的成败。

需求分析是软件定义时期的最后一个阶段,它的基本任务是准确的回答“系统必须做什么”这个问题。需求分析的任务还不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。因此,必须用行之有效的方法对软件需求进行严格的审查检验。

结合“基于Spring+Struts2+Hibernate的运动社区”的用户信息,切实了解他们整个系统期望具有的功能,分析他们的信息特点,与其共同决定系统具有以下功能。

1.用户登录:已经注册的用户可以直接登录,通过验证用户名和密码后就可以进入主页面;没注册的用户先注册,注册成功后返回登陆界面;在登录过程中,忘记密码的用户可以根据提示问题和答案找回密码。

2会员信息管理:用户登录后可以查看自己的信息也可以修改自己的基本信息,并可以创建或修改自己的个性空间。

3.短信息管理:用户可以给自己的好友发短信或回复好友的来信,并可以查看自己的发件箱或收件箱,以查看发送给好友或收到好友的短信。

4.好友管理:包括好友速配,好友名单,黑名单三个子模块.在好友速配时可以随机速配一个好友,也可以根据条件查询好友;在好友名单中,可以把好友移动到黑名单;在黑名单中,可以彻底删除好友,也把黑名单中的好友移动到好友名单中。

5.系统可以根据登陆的次数给用户加上相应的积分,也可以在用户注册时给相应的介绍人加上相应的积分。

6.运动论坛管理:用户可以在论坛中发表自己的心声唤起其它会员的响应,其它会员可以查看会员发表的文章并且作出自己的评论。除此之外用户还可以查看作者的相关

1