《俱乐部会员管理设计与实现毕业论文设计.doc》由会员分享,可在线阅读,更多相关《俱乐部会员管理设计与实现毕业论文设计.doc(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、北京邮电大学毕业论文设计俱乐部会员管理设计与实现摘 要随着计算机技术的不断发展,许多企事业单位的管理都实现了办公自动化,这种自动化管理方式不仅管理简单,而且效率非常高。健身房实行会员制已经非常流行,但是由于客户需要亲自到健身房所在地或制定地点进行注册,因此阻碍了健身房的发展。而网络会员注册系统通过互联网突破了时间和空间的限制,实现了便捷快速的注册和管理功能。使用计算机进行信息的管理,使健身房管理科学化,可以最大限度地减少信息损失,提高健身房的利益。然而近年来,许多学校的社团活动开展不是十分乐观,同时学校对活动的管理和认识不足,思想上不够重视,在活动中也存在只重智力发展,而轻视学生素质的锻炼。本
2、系统针对这种现象,结合学校的实际活动进行情况,从中找出存在主要问题,并提出一些建议,为进一步提高活动质量,管理更加规范化、科学化所以本系统的开发是十分必要的。本系统采用java语言编程、在web环境下,基于B/S三层结构模式,以myeclipse为开发工具,mysql为数据库结合开发的社团俱乐部管理系统。这个系统具有伸缩性好,扩展性强,能兼容、易维护、界面美观,功能实用的功能。系统操作上,它对管理的工作人员的要求极低,只需要懂得基本的计算机操作即可胜任中网的工作。本文阐述了社团俱乐部管理的优势,并对所做系统站的分析、设计及实现过程做了详细介绍。关键字:社团俱乐部管理;mysql;jspiClu
3、b management design and implementationAbstractWith the continuous development of social economy, living standards gradually improved, life is also continuously improve the level of people, peoples leisure activities are gradually up, people like to do some outdoor activities in leisure time, it has
4、become an important part of peoples life. Now the school extracurricular activities are also gradually multi direction, such as the rise of community. School or class is often organized some activities, which will not only enrich school life, will improve the development of students quality, improve
5、 health, develop the students ability of organization and self-improvement ability, to form the habit of exercise, the idea of lifelong education, cultivate team spirit and enterprising outlook on life has the positive function.However, in recent years, many school club activities is not very optimi
6、stic, at the same time, the school management and awareness of the lack of activity, the thought of not paying enough attention, there is only the intelligence development in the activity, and the quality of students training. This system in view of this phenomenon, the actual activities combined wi
7、th school situation, find out the existing problems, and puts forward some suggestions for further improvement, quality, management more standardized, scientific, so the development of this system is very necessary.The system uses the Java programming language, in the web environment, based on B/Sth
8、ree layer structure mode, using MyEclipse as a development tool, MySQL as databasemanagement system combined with the community development. This system has good flexibility, expansibility, compatibility, easy maintenance, the interface is beautiful, functional and practical function. System operati
9、on, the management of staffs request is very low, only need to know the basic computer operation can be competent the job. This paper expounds the advantages of community management, and to made the system analysis and design, the realization process of the station are introduced in detail.Key words
10、:Community management system;mysql;jspii目 录摘 要iAbstractii1 引文11.1 选题的意义11.2 发展趋势12 相关技术及可行性22.1 Jsp简介22.2 B/S结构工作模式图32.3 Myeclipse简介42.4 MySQL简介42.5 可行性分析52.5.1 技术可行性52.5.2 经济可行性52.5.3 操作可行性52.5.4 管理可行性52.6 需求分析63 系统设计73.1 系统设计概要73.2 系统功能模块设计73.2.1 管理员功能介绍83.2.2 职员功能介绍93.2.3 会员功能介绍93.3 数据库设计103.3.1
11、数据库实体与其属性113.3.2 体系结构153.3.3 数据库表173.3.4 数据表的建立193.4 数据库需求分析224 系统实现234.1 系统概述234.2 系统实现234.2.1 系统功能简介234.2.2 登录页面实现234.2.3 系统首页页面264.2.4 会员注册页面274.2.5 查看社团活动页面284.2.6 个人资料页面304.2.7 个人账户页面314.2.8 会员管理页面324.2.9 活动管理页面334.2.10 会员信息统计页面345 系统测试365.1 正确认识测试365.2 软件测试目的365.3 软件测试方法365.4 测试通过/失败标准37结 论38参
12、考文献39致 谢40外文资料41中文翻译491 引文1.1 选题的意义随着社会主义市场经济的确立、人民收入的不断提高、新的生活方式和全民健身计划的顺势推行,全民的健身热潮呈现出空前活跃的景象。特别是在2008年北京成功举办奥运会之后,强身健体更是为广大国人所推崇,越来越多的人走进健身房,跳健身操、做瑜珈已经成为时下比较流行的一种健身娱乐项目,因此健美健身行业得到了迅速蓬勃的发展。随着自身规模的不断扩大,客户数量不断增多,传统的管理模式已不能适应现代健身机构的发展趋势。作为经营者,应该培养市场意识,将IT与健身行业相结合,建立自己的管理系统,在硬件上达到一定的高度的同时在软件上也要有自己的一套管
13、理模式。出于更好地对俱乐部进行管理和服务,提高员工工作效率,降低管理成本等多方面考虑,有必要通过现代化科技手段,建立完善的客户自动化管理系统,以取代现有的手工操作,通过自动化管理方案,为客户提供专业的健身服务,实施专业化、科学化的管理。只有具备了高效地管理、个性化的服务,才会使这个行业有更长远地发展。对于学校而言,学生是祖国的未来,更应该注重身心得发展,要达到德智体美全面的发展,健康的发展。随着全民健身计划的广泛推广,学生的社团活动也变得丰富起来,这不但是学生课余生活的组成部分,也是学校教育工作的重要组成元素。伴随着我国高等教育规模的发展与壮大,大学生人才培养的数量与质量之间产生的矛盾也日趋突
14、出,面对当前竞争日益激烈的大学生状况,如何保证高校培养的人才质量,已经成为高等教育界普遍关注的问题。所以注重学生的全面发展尤为重要。1.2 发展趋势随着计算机网络的发展,特别是校园网的日益完善,以及Java技术的发展,信息的发布、检索浏览无论在形式上还是手段上都发生了革命性的变化,开发这样的健身房管理系统也有着广泛的理论和实践基础。学生的社团活动不但是学校课程的重要组成部分,也是大学生健康生活方式的重要内容,课外的活动是学生的活动的重要活动之一。现在学生对课余活动包有浓厚的兴趣,班级的课外活动也变得多样性、趣味性。但是如果人数多的情况下传统的管理报名方式无法满足需要,人员的管理十分不方便,对活
15、动的通知不够及时,缺乏准确性,对报名人数的统计不够准确,容易出错等,所以开发一套相关的活动管理系统十分有必要。2 相关技术及可行性2.1 Jsp简介JSP,即Java Server Page,Java应用页面程序。作为开发动态页面的一种技术,JSP是当前大中型企业应用软件首选的开发路线之一。而且JSP是J2EE的重要组成部分,开发人员可以在JSP中获得J2EE的众多优点。学习JSP也是J2EE入门的必经之路。JSP既依赖于也得益于J2EE技术。“一次编写,随处运行”的可移植性使用户可以专注于JSP的开发,而无须考虑系统层面的问题;Java的开放特性使市面上涌现出了众多的Web框架可供采纳;面向
16、对象的设计,为更加轻松地构筑安全稳定的Web在线系统提供了基础保障。JSP秉承了J2EE高贵的血统,却又带着平易近人的个性。JSP本质上是一个Java程序,具备Java语言一切无与伦比的优势。相比依赖于VBScript代码的ASP,以及依赖于Perl语言的PHP等其他Web编程语言,JSP有着严格的Java语法支持,可以和Java Bean无缝整合。ASP采用了解析执行的机制,而JSP则是先编译后执行。因此,在第一次访问时JSP比ASP要慢,但是JSP的执行则比每次都解析执行的ASP快若干个数量级。微软随后推出了ASP.NET,号称提供了丰富的面向对象类库,引入中间语言的概念来支持多种语言,完
17、整地集成了XML及Web Service的支持,利用代码托管机制避免危害服务器,并期盼以此代替ASP。事实上ASP.NET的框架设计与J2EE框架十分类似,虽然弥补了ASP之前的缺陷,但是,其对于Windows平台的依赖性以及.NET本身的封闭性却依然存在。尽管现在有Mono计划将所有的开发转移到Linux,但是由于各种原因,Mono有着众多的制肘,并不被业界看好。当然,对于Windows环境下的中小型应用程序,ASP.NET确实是不错的选择。JSP是线程高度并行的,可以充分利用硬件资源。另外,Java语言与平台无关,开发者可以将JSP部署在几乎任何操作系统上,UNIX系统可以为JSP提供稳定
18、可靠的安全运行环境;利用集群技术还可以把多台主机联合起来服务于JSP应用程序。因此,JSP对于高可靠性、高性能要求的企业级应用系统有较强的吸引力。从开发者的角度考虑,JSP是开发Web应用程序的首选。JSP支持JavaBean组件,也就获得了众多Java厂商的有力支持,开发者可以利用JavaBean来完成所有Java能实现的功能,如数据库连接池、图形绘制、文件IO操作、XML解析、WebService调用与发布等。Java的开放性也使系统框架如雨后春笋般涌现, Tapstry,Velocity,Hibernate等开源框架为Web应用开发者简化了开发流程,提高了代码质量,从而降低了学习门槛和开
19、发成本。JSP遵循J2EE规范所采用的分层结构也使得代码容易组织维护,各个独立的层次分别针对特定的编程领域,在某个领域发生变化的时候,只需要在对应层次进行针对性的修改,而不会影响到其他层次的代码。而相对于Servlet这种Java类,JSP又有着特定的优势。从前面的例子可以看出,要完成一个简单JSP页面具有的功能,需要编写大量的Servlet代码,而且,从代码上根本看不出来生成的HTML文档结构。另外,JSP中双引号等特殊字符,在Servlet中都需要进行转义处理,又进一步降低了程序的可读性。Servlet不能有效地利用原型页面。事实上,在JSP中,还可以使用标签等特性,进一步将JSP中的 J
20、ava代码导致的不利因素削弱。总之,使用JSP可以降低开发门槛,提高程序可读性,开发出高性能的跨平台企业级软件。所以在线汽车销售系统站采用了JSP技术。2.2 B/S结构工作模式图B/S结构是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构它克服了上述C/S结构的缺陷。B/S结构中,事务处理的逻辑部分从客户机的任务中分离出来,使客户机不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,由服务器来担负更多的工作。用户仅通过浏览器就可向服务器发出请求,服务器处理用户的请求,并将结果返回给用户。B/S结构相对于C/S结构的优势具有以下及方面优势:开发和维护成本C/S结构开发
21、和维护成本较高。对不同客户端要开发不同的程序,编程工作量大,如果应用程序要进行安装、修改和升级,均需要在所有的客户机上进行,复杂又麻烦。对于B/S结构,只需在客户端安装通用的浏览器,所有的维护与升级工作都是在服务器上执行的,不需对客户端进行任何改变,因而大大降低了开发和维护的成本。客户端负载C/S结构的客户端担负着显示与处理数据的任务,负载过重。随着应用系统的功能越来越复杂,客户端的应用程序也变得越来越庞大,客户端也越来越“胖”,而不断地提高客户机的配置,又加大了投资成本。B/S结构的客户端把事务处理的逻辑部分交给了服务器端,不再负责处理复杂计算和数据访问等关键事务,只需要进行显示,使客户机变
22、得很“瘦”。采用的标准C/S结构所采用的标准只在内部统一,其应用通常是专用的。B/S结构所采用的标准是开放的、非专用的,是经过标准化组织所确定的,保证了其应用的通用性和跨平台性。灵活性C/S结构系统模块中每一部分的变动均要关联到其它模块的变动,使系统很难升级,灵活性差。B/S多层结构中,层与层之间相互独立,任何一层的改变不影响其它层的功能,系统的改进变得相对容易,可以用不同厂家的产品来组成性能更佳的系统。移植性C/S结构移植困难,不同开发工具开发的应用程序,一般来说互不兼容,难以移植到其它平台上运行。对于B/S结构,在客户端安装的是通用浏览器,不存在移植后兼容性问题。用户界面风格C/S结构的用
23、户界面是由客户端所安装的软件决定的,用户界面各不相同。而B/S结构只需在客户端安装通用的浏览器就可以访问程序,浏览器的界面统一友好,易十使用。B/S工作模式图如图2.1所示: 图2.1 B/S工作模式图2.3 Myeclipse简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持 ,JSP,CSS,Javas
24、cript,Hibernate等。MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse是几乎囊括了目前所有主流开源产品的专属eclipse开发工具。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyE
25、clipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse5.5以前版本需先安装Eclipse。MyEclipse5.5以后版本安装时不需安装Eclipse。2.4 MySQL简介MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”
26、),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境.MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL最初的开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。经过一些测试后,开发者得
27、出结论:mSQL并没有他们需要的那么快和灵活。这导致了一个使用几乎和mSQL一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个1API被设计成允许为用于mSQL而写的第三方代码更容易移植到MySQL。MySQL这个名字是怎么来的已经不清楚了。基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一Michael Widenius的MySQL AB创始人之一Monty Widenius女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。MySQL的海豚标志的名字叫“sakila”,代表速度、力
28、量、精确,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。2008年1月16号MySQL AB被Sun公司收购。而2009年,SUN又被Oracle收购。就这样如同一个轮回,MySQL成为了Oracle公司的另一个数据库项目。2.5 可行性分析可行性分析是在全面调查的基础上,针对系统的开发是否具备必要性和可能性,对系统的开发
29、从运行、经济、技术的方面进行分析和研究,以避免投资失误,保证新系统开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。这部分将从以下三个方面进行研究:技术可行性、经济可行性、操作可行性。2.5.1 技术可行性技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。本系统采用三层结构,用mysql数据库作为后台数据库,安装和使用简单易学,方便操作;用的是JSP开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前单机模式相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大
30、、可靠性能高、价格低,完全能满足系统的需求。2.5.2 经济可行性经济可行性是指开发并应用此系统,应对其投资成本和未来可能取得的经济利益,权衡其得失。随着计算机软件和硬件技术的飞速发展,计算机软、硬件价格不断下降,以可行的情况下开发这样一个管理系统成本不会很高,经过详细周密的调研,采用功能强大的软件,借鉴成功的实例,及科学的开发方法,可以降低开发成本,达到经济高效的目的,因此改性统在经济可行性上时可行的。2.5.3 操作可行性微软Windows操作平台具有良好的操作性,社团俱乐部管理系统的服务器可以放在UNIX平台,运行也可以基于Windows操作平台。本系统具有友善的用户界面、良好的安全性设
31、置和详细的操作说明,适合各类人群使用。2.5.4 管理可行性 如今是信息化的时代,学校、企事业单位的电脑特别是PC机已相当普及,对健身房进行电脑化管理已具备了足够的硬件条件,本系统是在电脑中进行健身房管理的一种软件,提供友好的界面,结合数据库技术,具有易学、易懂、易操作的优点,本软件的开发一定能得到广大用户的欢迎。2.6 需求分析需求分析是在软件开发的初始阶段进行,它对于整个软件开发过程以及软件开发后质量是举足轻重的。随着软件系统复杂性的提高及规模的扩大,需求分析在软件开发中所处的地位愈加突出。所谓需求,是指用户对目标软件系统在功能、行为、性能设计约束等方面的要求。在需求分析的研究中,系统开发
32、人员必须对用户的需求进行调查和分析,结合实际环境的特征,正确定义目标软件的特征。因此,需求分析至关重要。社团俱乐部管理系统主要实现以下相关功能:管理员功能:用户登录、管理员在系统中生成编号,工学生在注册时使用。管理员也可以查看会员的注册信息并可以删除会员,同时可以添加社团活动,添加后可以查看详情或是删除信息。会员功能:会员需要先注册成为网站会员才可以查看或是报名社团活动,修改个人信息,查看个人账户并可以对账户充值,查看活动记录或是缴费记录。 职员功能:职员登录后可以查看会员的信息,并可以查看各个年龄段会员的分布饼形图。同时可以查看最近一周社团活动总人数的图标统计图。3 系统设计3.1 系统设计
33、概要在概要设计中主要确定了系统的实现手段,定义了解决方案的边界和主要技术结构,给出了后续工作继续实施的所有技术要点,是开发人员在下一阶段进行详细设计的指导性文件,也是考核系统总体质量的重要技术文档。本次的系统开发完全是一切为用户着想,界面要美观大方,操作尽量简单明了,使其社团俱乐部管理系统的管理实现规范化、科学化。因为社团俱乐部管理系统的使用者大多都是普通的用户,并不具备非常专业的计算机类知识,过于复杂的系统将会使系统操作人员不方便使用,因此,简单实用的系统成为了系统意向非常重要的指标,能够适用于任何人群,不需要太多的计算机类知识,仅仅只要求使用的工作人员具有最基本的计算机知识,即可用系统完成
34、中的基本业务处理,而且系统能够极大的提升工作人员的工作效率。我们需要的软件应该是可以随着用户需求的调整和改变而做出相应的调整和改变的灵活系统,可以快速灵活地根据客户需要进行客户化开发,增加、修改客户界面和客户流程,更加的人性化。这样就能减少系统二次开发的成本,并且能充分的满足、贴切用户的需求,进而节约不必要的开支,更好的为用户服务。本系统是应用于整个社团俱乐部管理系统 的管理,所以对于实际中不同身份的用户,在本系统中都有对应其角色的不同操作页面,即不同的用户有不同的功能,并且切互有联系。体现了该系统的完整性。3.2 系统功能模块设计在结构化系统设计中,模块一般都是按功能划分的,通常称为功能模块
35、。合理的功能模块的划分能够极大限度地减少重复劳动、提高开发工作的效率并增大系统的可维护性。本系统分为两个用户权限即管理员、职员、会员。下面分别介绍各个用户的功能基本信息管理员图3.1 系统业务流程未注册用户注册登陆系统注册过的用户查询查询删除添加修改发布保存所有用户所有被操作的信息被自动写入数据库。3.2.1 管理员功能介绍用户登录、管理员在系统中生成编号,工学生在注册时使用。管理员也可以查看会员的注册信息并可以删除会员,同时可以添加社团活动,添加后可以查看详情或是删除信息等功能,具体如下所示:1、会员管理:在此模块管理员可以查看会员的具体信息并可以删除信息,同时可以生成编号,供用户注册时使用
36、。2、活动管理:管理员可以添加活动,如活动名称、地点、费用等,添加后可以查看详情并可以删除信息。管理员的功能模块图如图3.2所示:图3.3 管理员功能3.2.2 职员功能介绍职员功能:职员登录后可以查看会员的信息,并可以查看各个年龄段会员的分布饼形图。同时可以查看最近一周社团活动总人数的图标统计图。具体功能如下:1、会员信息统计:在此模块职员可以查看会员的具体信息如编号、会员名、年龄、性别、居住地等,同时可以查看各个年龄段会员的分布饼形图。2、社团使用情况:职员可以查看最近一周社团活动总人数的图标统计图。3.2.3 会员功能介绍会员功能:会员需要先注册成为网站会员才可以查看或是报名社团活动,修
37、改个人信息,查看个人账户并可以对账户充值,查看活动记录或是缴费记录。1、会员注册:注册时需要填写管理员分配的编号、会员名、会员类型、年龄、性别、专业班级、电话等即可注册成为会员。2、网站首页:会员登录后可以在首页中查看最新活动,社团活动记忆等信息。3、最新活动:在此模块可以查看管理员发布的社团活动,并可以申请加入社团活动。4、会员中心:在此会员可以修改个人资料,查看个人账户信息并可以给账户充值,查看活动记录或是缴费记录,也可以退出社团 。用户的功能模块图如图3.3所示:会员功能模块查看缴费记录活动查看查看活动记录申请参加活动图3.3 会员功能个人账户充值修改个人资料网站首页会员注册退出社团3.
38、3 数据库设计数据库是整个系统的基石,数据库的设计优劣直接影响到整个系统的设计成败,本节对数据库的设计进行专门阐述数据库设计是把现实世界的实体模型与需求转换成数据库的模型的过程,它是建立数据库应用系统的核心问题。数据库及其应用的性能都建立在良好的数据库设计的基础之上,数据库的数据是一切操作的基础,如果数据库设计不好,那么其它一切用于提高数据库性能的方法收效都是有限的。数据库设计的关键是如何使设计的数据库能合理地存储用户的数据,方便用户进行数据处理。设计数据库必须遵循一定的规则,在关系型数据库中,这种规则就是范式,范式是符合某一种级别的关系模式的集合。一般人们设计数据库遵循第三范式。即:数据库表
39、中不包含已在其他表中包含的非主关键字信息。采用范式减少了数据冗余,节约了存储空间,同时加快了增、删、改的速度。本系统站将使用一直以来使用都最为广泛的关系模型作为数据库的建设依据。在用户的观点下,关系模型中数据的逻辑结构是一张二维表,一个关系对应通常说的一张表,并且关系的每一个分量必须是一个不可分的数据项。而一个基于关系模型的数据库则是由若干个二维表组成的。同时它们所带有的数据库管理工具是其他小型数据库所没有的,而同时这些工具又为管理员的工作节省了很多的时间和财力。1、健身俱乐部管理系统流程图 图3.4 系统流程图 2、健身俱乐部管理系统功能级数据图图3.5 系统功能级数据图3.3.1 数据库实
40、体与其属性针对本系统特点,数据库设计采用的各个组成部分的数据项和数据结构如下所示:1、account账户实体图: 图3.6 账户实体与其属性图2、activity活动实体图 图3.7 活动实体与其属性图3、arecord活动记录实体图图3.8 活动记录实体与其属性图4、 card编号实体图图3.9 编号实体与其属性图5、member会员实体图图3.10 会员实体与其属性图6、pay缴费实体图图3.11 缴费实体与其属性图7、staff 职员实体图图3.12 职员实体与其属性图8、总体E-R图图3.13 总体E-R图3.3.2 体系结构目前软件项目中有很多体系结构,其中struct是比较流行的一
41、种。1、struct体系结构对于开发Web应用,要从头设计并开发出一个可靠、稳定的框架不是一件容易的事情。随着Web开发技术的日趋成熟,在Web开发领域出现了一些现成的优秀的框架、开发者可以直接使用它们。struct就是一个很好的框架结构,它是在JSP Model2基础上实现的一个MVC框架,在struct框架在模型由实现业务逻辑的JavaBean或者EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件组成,图2-6显示了Struct实现的MVC框架。其中:视图,就是一组JSP文件,这些JSP文件没有业务逻辑,也没有模型信息,只有标签,这些标签可以是标准
42、的JSP标签或者是客户化标签,如struct标签库的标签。此外,通常将struct框架中的ActionForm Bean也划为视图模块,ActionForm Bean是一种JavaBean,除了具有一些JavaBean的常规方法外,还包含了一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置为默认值。Struct框架利用ActionForm Bean来进行视图和控制器之间表单数据的传递。Strcut框架将用户输入的表单数据保存在ActionForm Bean中,将它传递给控制器,控制器可以对ActionForm Bean中的数据进行修改,JSP文件使用struct标签读取修改后的Act
43、ionForm Bean的信息,然后重新设置HTML表单。控制器ActionServlet视图JSPStruct-config.xml模型JavaBeanEJBActionActionAction浏览器Web服务器 图3.14 struct实现的MVC框架控制器,控制器由ActionServlet类和Action类实现,ActionServlet类是struct框架中的核心组件,是这个MVC的中央控制器的角色。ActionServlet主要负责接收HTTP请求的信息,根据配置文件struct-config.xml的配置信息,将请求转发给适当的Action对象,如果该Action对象不存在,Ac
44、tionServlet会先创建这个Action对象.Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程,对于小型简单的应用,Action类本身也可以完成一些实际的业务逻辑。模型,模型表示应用程序的状态和业务逻辑,业务逻辑常常由JavaBean或者EJB组件实现。如果在Web应用开发中套用现成的struct框架,就可以简化每个开发阶段的工作,开发人员可以更加有针对性地分析应用需求,不必重新设计框架,只需在struct框架的基础上,设计MVC各个模块包含的具体组件,在编码过程中,可以充分利用struct提供的各种实用类和标签库,简化编码工作。Struct框架可以方便迅速地将
45、一个复杂的应用划分成模型、视图和控制器组件,而struct的配置文件struct-config.xml可以灵活地组装这些组件,以简化开发过程。3.3.3 数据库表表的设计是这次设计的一个核心内容。根据前面对系统站各个权限用户模块的功能分析和对数据库中实体关系的设计,可以看到系统站中所用到的数据信息基本包括:社团活动表、通知表、用户表、报名表。设计原则如下:1、进行规范化设计,尽可能地减少数据冗余和重复。2、结构设计与操作设计相结合。3、数据结构具有相对的稳定性。基于以上三条设计原则,本系统中关于数据库表结构设计如下:1、account账户表账户表主要存储主键、激活状态、账户余额、上次支付日期、
46、账户状态等信息,具体如表3.1所示:表3.1 account账户表名称数据类型长度备注acidint10主键isActivatedtinyint1激活状态balanceint10账户余额lastpaydate0上次支付日期stateenum0账户状态midint10会员id2、activity活动表活动表主要存储主键、活动名、活动日期、活动地点、活动介绍、参加人数、活动费用等信息,具体如表3.2所示:表3.2 activity活动表名称数据类型长度备注aidint10主键anamevarchar50活动名 adatedate0活动日期addressvarchar100活动地点ainfovarchar1000活动介绍numint5参加人数priceint10活动费用posturlvarchar200活动海报URL3、arecord活动记录表活动记录表主要存储主键、会员id、活动id、活动日期等信息,具体如表3.3所示: