摘 要
随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的管理信息系统。
本文设计的运动会管理系统是基于JSP技术的,它具有灵活的集成开发方法,顺利的完成了整个系统的完整的检验。该运动会管理系统,界面简单,操作方便,灵活,实用,有效简化了的运动会管理的过程,大大提高了效率,使运动会管理系统更加系统化,规范化,自动化,具有很好的可用性,可靠性,安全性。此系统采用标准的三层框架,将复杂的功能模块分为表示层、控制层、业务层等三层结构,降低了系统开发的复杂性。主要采用了JSP技术开发,提高运行性能和系统的安全性能,而且易于维护的运行。该系统主要实现了赛事安排、成绩录入、成绩查询、代表队总分统计、项目名次统计、代表队管理、运动会信息管理、班级管理、岗位管理、比赛项目管理、工作人员信息管理、管理员用户管理、修改个人信息、修改登录密码等功能模块。
关键词:运动会管理;B/S架构;MVC;JSP
Abstract
As information technology in the management of more in-depth and wide range of applications , the implementation of management information systems , technology has gradually matured. Management information system is an evolving new discipline , any one unit to survive is to develop and efficiently the internal activity of organic and organized, it must establish a management information system compatible with its own characteristics .
This design of the Games Management System is based on JSP technology, it has a flexible integrated development approach , the successful completion of a complete inspection of the entire system . The Games Management System , a simple interface, easy to operate, flexible, practical and effective simplifies the process of sports management , greatly improving the efficiency of the management system to make the Games more systematic , standardized, automated , with good usability , reliability, security. This system uses a standard three-tier framework , complex modules into the presentation layer , control layer structure layer, business layer , reducing the complexity of system development . The main use of JSP technology development, improve operational performance and system safety performance , and ease of maintenance operation. The system implements event arrangements , results entry , query results , team score statistics , project ranking statistics, team management , sports information management , class management , job management, event management , information management staff , administrator user manage, modify personal information, modify the login password and other functional modules .
Keywords : Games Management ; B / S architecture ; MVC; JSP
目 录
第一章 绪论
1.1 课题研究背景
1.2 课题目的及意义
1.3 本课题主要工作
第二章 系统相关技术
2.1 JSP技术
2.2 MVC模式
2.3 B/S结构
2.4 SQL Server2005数据库介绍
2.5 本章小结
第三章 系统需求分析
3.1 系统总体目标
3.2 系统可行性分析
3.3 系统功能需求分析
3.4 系统非功能需求分析
3.5 系统开发环境与开发工具
第四章 系统设计与实现
4.1 设计目标与原则
4.2 系统架构设计
4.3 数据库设计
4.4 系统设计与实现
4.4.1 数据库连接实现
4.4.2 系统登录实现
4.4.3 赛事安排模块实现
4.4.4 成绩查询模块实现
4.4.5 运动员信息管理模块实现
4.4.6 比赛项目管理模块实现
4.4.7 管理员用户信息模块实现
第五章 系统测试
5.1 软件测试及工具
5.2 测试方法
5.3 系统配置要求
5.4 测试内容
5.5 测试结果
5.6 本章小结
总结
致谢
参考文献
第一章 绪论
1.1 课题研究背景
高等院校运动会是高校体育工作的重要组成部分。近年来,随着招生规模的扩大,导致比赛项目、参赛人数不断增加,同时人们对比赛结果的准确性和实时性要求也越来越高,参赛队需要得到及时、准确的相关信息,从而有效进行竞赛的决策指导,这些问题和需求是采用人工方式或单机版运动会管理系统都难以解决的。为此,我们对运动会的信息综合管理系统进行了研究,使运动会的筹备、组织、管理、协调等工作全面实现了计算机网络化、自动化,极大的提高了工作效率和信息处理的实时性。
高校运动会作为各项体育运动的基础,具有广泛的群众性。每届的高校运动会声势浩大,是提高、检验学生的健康水平,开展全民健身运动的有效途径。由于比赛项目较多,参赛人数广,数据处理量大且变化时效性要求高,管理较为复杂,其编排,记录,公告工作是一项复杂的工程。为了解决在运动会管理和组织所面临的各种问题,我们开发了一套适合高校的运动会管理系统。
目前,运动会已经是每所高校学生活动中不可缺少的一个重要组成部分,在我院也不例外。而现代的体育运动会,由于参加者多、项目多,时间安排紧凑,人们对于比赛结果的准确性和实时性要求也越来越高。而目前对赛前的报名、比赛的安排、赛中的成绩录入、赛后处理,在许多高校都是采用以往的手工处理(即使采用电脑,也是一些软件功能的组合使用,根本没有一款适合运动会的管理系统)。因此在现代的高校运动会中,存在的问题很多:
(1)参赛者多,项目杂,时间安排紧凑,造成比赛结果的准确性不高;
(2)时间和场次安排冲突,分组径赛不合理;
(3)统计排名汇总错误;
(4)人为因素的干扰,赛场作弊行为的发生;
(5)没有为参赛的教练员和运动会及时、准确地提供竞赛相关信息;
(6)目前的运动会管理系统功能不够完善,有许多采用C/S+B/S组合模式,而不能 完全采用B/S模式。
因此,有必要开发一款以方便对运动员报名信息的采集、赛事的合理安排、方便统计排名与发布相关信息的基于web的高校运动会管理系统。
1.2 课题目的及意义
高校学生运动会和教工运动会常常是同时举行,运动会安排的项目较多,所产生的数据量很大,其数据总量甚至超过一次省级运动会,且变化与时效性要求高,管理较为复杂。传统手工进行信息处理,完成如此多的数据,学校要耗费很多人力物力,并且准确性和时效性并不理想,而且直接影响工作质量与效率,与信息时代的管理要求极不协调。因此,开发一款具有先进性和实用性的,符合具体院校规则要求的运动会管理系统很有必要。
本高校运动会管理系统是针对我院当前运动会工作需要而开发的B/S模式的网络系统,涉及到运动会赛前的报名录入准备与分组编排、赛中的成绩处理、赛后的成绩汇总与团体总分的统计。它将是一个完整统一、技术先进、高效稳定、安全可靠的基于Internet/Intranet的高校运动会管理网络系统。并在赛前进行相关文件的上传、下载,能很好的为赛前做好充分的准备;将及时有效的向外发布比赛成绩、进决名单等等比赛信息;参赛运动员可进行对自身信息的查询,对赛后结果的查询,了解比赛相关情况。还为本网站的访问者提供运动会相关信息的查询,了解运动会,获得运动会相关知识,能够为体育爱好者提供良好的学习。
开发本系统的意义重大,借助于运动会管理系统的建设,促进运动会管理 效率的提高,从而减少举行运动会时所需的人力物力;减少人为因素的计算统计错误,而提高分数计算的准确性;能及时有效的向运动员以及学生提供比赛信息。
1.3本课题主要工作
本文依据面向对象的软件开发流程,对需求分析到实施检测都进行了全方面的阐述。本人主要做了一下工作:
1. 对需求进行分析。对采集系统的需求进行分析,了解该系统的主要特点和要实现的目标,和用户交流之后对用户的特点和系统的业务流程进行分析,全面掌握业务流程,理清系统的功能性需求和非功能性需求。
2. 选择合适的技术方案。建立一个系统的开发平台,再对关键技术进行详细的研究。按照实用、开放、开源的原则,从数据库平台、系统平台、开发平台、应用服务器这几个方面,设计出既保证满足需求,又开源可扩展的系统架构。利用大量的扩展产品要比传统的开发方式更灵活且成熟。
3. 系统的设计和系统的实现。系统的设计原则依据 MVC 的设计思想,使得系统的外观、业务逻辑与数据存储处于分离的状态。详细分析系统的功能、业务流程、用户角色,以此为根据设计系统的结构,还详细地分析设计系统。
4. 测试系统。本文对系统的测试方法进行了详细论述。
第二章系统相关技术
2.1 JSP技术
JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP主要优先如下:
(1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。
(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比JSP/PHP的局限性是显而易见的。
(3)强大的可伸缩性。从只有一个小的war文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
(4)多样化和功能强大的开发工具支持。这一点与JSP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
2.2 MVC模式
MVC 是一种目前广泛流行的软件设计模式。由于 J2EE 技术逐步走向完善,在实际生产中,MVC 设计被越来越多的使用,逐渐成为主流应用模型。与其它模式相比,MVC 模式不但在显示、功能两大模块的分离上存在优势,而且支持以下
功能:扩展性、维护性、移植性,此外使得组件具有可复用性。
所谓 MVC ,即 Model——模型、View——视图、Controller——控制器的缩写。具体将,就是将依照视图、模型、控制器的方式对输入、处理、输出流程进行分离处理。所以一般将应用分成三个不同的层次:模型层、视图层、控制层。事件至少会引起三者中的一个发生变化。因此,只要控制层将模型层的属性或有关数据进行改变,就会导致新的视图层得出现。同理,控制层导致视图层得变化,也会使得模型层发生变动。图 2-1 显示的是 Model、View、Controller 之间的相互关系。
图 2-1 MVC 模式体系结构与工作原理
2.3 B/S结构
B/S 结构是 Browser/Server 的缩写,汉语中指的是浏览器以及服务器结构。B/S的基础是 C/S,经过对 C/S 的修改、升级得到的。在 B/S 下,具有三层结构:首先,用户的操作界面通过浏览器实现;其次,大部分事务逻辑的实现基于服务器端;最后,少部分的事务逻辑的实现由前端完成。采用这种结构,不但使整体成本下降,而且将电脑的负载大大降低,从而减少工作量与工作强度。在现阶段,采用B/S 模式结构,是很容易实现的。这种技术属于一次性开发,允许不同的工作人员从不同的地点,以不同的接入方式,随时随地的对数据库进行管理,还能有效的保护数据平台和管理访问权限,保证有关数据的安全。
1. B/S 架构软件的优点和缺点
(1) 容易,升级方便。随着技术的进步,一般来讲,对于软件的修改原来越多,软件的升级周期越来越短。而采用 B/S 结构就能够很容易避免这方面的麻烦。
对于一般的结构而言,在一个企业中,若电脑数量较多,维修人员会因维修与软件升级而来会奔波,工作强度极其巨大。而对于采用 B/S 结构的软件来讲,由于客户端(电脑)仅起到浏览器的作用,因此维修人员只需要维护好服务器就可以了。无论客户端多么庞大,都丝毫不会增加工作强度。另外,B/S 结构支持异地协助,可以实现异地的软件升级、维护。采用 B/S 结构会大大降低所需的人力物力,从而提升工作效率。
(2) 低成本,更多的选择。由于最常使用的操作系统是 windows,因此浏览器似乎成了必不可少的。然而在服务器操作系统竞争中,微软公司的产品未必是最好的。现在逐渐形成新的模式,即用 B/S 结构与 Linux 服务器进行匹配,这样带来的好处是更为安全可靠,另外还有一点非常重要,即 Linux 的数据库也是不收费的。这也说明了 B/S 结构对操作系统的选择不唯一,而是支持多种操作系统的。
(3) 应用服务器的运行数据负荷重。根据分析我们知道,B/S 的三层结构分工明确,即绝大多数的事务逻辑由服务器端处理,另外客户端只起到浏览器的作用。这样虽然优势很多,但是也具有一定的缺点:即应用服务器上的负荷比较大,若服务器稍微出现问题,就会导致非常严重的后果,为了避免这种现象的出现,一般采取保护措施——配备专门的数据库服务器。
2. C/S 与 B/S 结构在技术上的比对
C/S 结构软件——客户机/服务器模式可以分为两层:首先是客户机,其次是服务器。客户机不但承担着对数据的输入、输出,而且在一定程度上要对相关数据进行处理、分析,还要对数据进行判断,合理分配,从而将通信的数据量、服务器上进行的计算量进行减轻。然而,服务器在连接数量上一级通信信息量上不是没有上限的,所以 C/S 结构仅适用于连接量较小的情况,比如财务软件等。
B/S——浏览器/服务器模式是在 C/S 的基础上发展起来的,要想完成软件应用业务的处理,仅需通过浏览器就能很容易的实现,是一种全新的软件系统构造技术。采用 B/S 结构是今后的趋势,一般来讲,e 通管理软件就采用了 B/S 结构。
(1) 在数据安全性方面的对比。对于采用 C/S 结构的软件而言,C/S 的结构决定了要求在各地都安装服务器,还要实现服务器间的数据同步,一旦某一点出现安全问题,势必造成整个系统的安全受到严重影响。因此,C/S 结构不适用于服务器较多的类型。而采用 B/S 结构恰恰可避免这一缺点,因为 B/S 结构的数据存放在专门的服务器内,客户端不保存任何业务数据和数据库连接信息,并且无需数据同步,因此不存在安全上的问题。
(2)在数据实时性上的对比。由于 C/S 结构无法保证随时随地的看到当前业务发生情况,因此得到的都是已经存在的数据,不是即时数据。而 B/S 结构则可以得到当前发生所有业务的实时数据,可以以此进行即时决策,有效地避免了企业的损失。
(3) 在数据一致性上的对比。要实现异地经营,对于 C/S 结构软件,需要安装区域级服务器,并实现数据上的同步,在服务器完成同步后总部才能得到最终数据。首先这就要求所以的服务器必须正常运行,其次由于存在的微小差异,在理论上无法实现数据同步。而采用 B/S 结构,这种结构的数据属于集中存放,无不同步问题,数据始终一致。
(4)在服务响应及时性方面的对比。企业的业务流程、业务模式不是一成不变的,由于要适应市场的需求,这就要求企业要实时进行调整、改革,业务的流程也在发生大大小小的变化,为了使企业正常运行,就必须对相关软件进行即时更新、维护。对于采用 C/S 结构的软件,由于所有的客户端都需要进行更新、维护,因此工作量巨大,很难做到所有的程序版本一致,所需要很长的时间重新部署。而对于采用 B/S 结构一类软件,服务器的作用与浏览器相当,所以软件的更新、维护只需在总部进行即可,大大节省了时间,很容易实现版本的一致性。
(5)在数据溯源性上的比对。对于 C/S 结构,由于数据不是采用集中存放模式,仅仅上传中间报表数据,因此很难查找原始数据的出处。而我们知道在 B/S 结构中,数据属于集中存放,因此便于总部对数据的来源进行查询,可以很详细地查询所有原始数据的来源。
(6)在网络应用限制上的对比。采用 C/S 结构的软件对网络要求较高:适用于局域网以及宽带(要求带宽不低于 1 兆)。对于采用 B/S 结构的软件而言,对网络要求很低,适应范围很广,甚至可以不采用宽带。
3. C/S 与 B/S 结构软件在运用上的对比
无论采用哪种软件,其目的是为了更好地让企业运转,因此,在选择软件时,不但要注意所采用的技术,还应关注在商业上的运用。我们将在商业运用方面进行对比:
(1) 在投入成本上的对比。对于 C/S 来讲,后期维护、更新费用巨大;对于B/S 而言,属于一次性投资,成本较低。
(2) 在企业快速扩张支持方面的对比。发展中的企业的主要特点是扩张的速度极其迅速。为了使企业的扩张能够顺利进行,就要求在部署软件时具有准确、及时的特性。对于 C/S 结构,一般要保证客户端、服务器、工作人员的同步性,因此与快速扩张不协调。而对于 B/S 结构而言,由于安装属于一次性,因此要想使企业扩展较快,就必须解决人才问题。
(3) 在硬件投资保护方面的对比。对于如何维护已经存在的硬件,两种结构采取的手段存在着非常大的区别:对于 C/S 而言,主要是更换中央服务器,采用更为高级的类型;而对于 B/S 来讲,可以采取逐渐增加服务器数量的方法,并使服务器间的负载逐渐趋于平衡,从而做到保护原有硬件。
若采用 C/S 结构,不但无法解决巨大的人力物力的消耗,而且无法保证拥有足够的人才,所以考虑到企业的发展前景,C/S 结构是不适应的。另外,C/S 结构无法保证安全性,并且要求中央服务器性能非常好。对于 B/S 结构而言,在用户的数量上是没有限制的。
根据上述分析,我们可以看到,在各个方面上,B/S 结构的管理软件都要优于C/S 结构软件。另外,当前的趋势也是逐渐用 B/S 代替 C/S。积极参与软件的B/S结构的发展从国内软件厂商的趋势,大型管理软件的B/S结构必将在未来几年占主导地位的管理软件领域。
2.4 SQL Server2005数据库介绍
Microsoft SQL Server2005是由一系列相互协作的组件构成,能满足最大的Web站点和企业数据处理系统存储和分析数据的需要。SQL Server2005的客户/服务器提供了许多传统主机数据库所没有的先进功能。数据访问并局限于某些已有的主机数据应用程序。SQL Server2005的一个主要优点就是与主流客户服务器开发工具和桌面应用程序紧密集成。可以使用许多方法访问SQL Server2005数据库。例如可以在Visual Basic, Visual C++, Access, Power Builder, Delphi中访问SQL Server2005数据库。
SQL Server2005具有很好的兼容性,与SQL Server2000相比,有以下几大改进:
1)XML数据类型、XQuery查询、XML增强;
2)CLR集成:可以用.NET编写SQL编程物件,如SP, Triger, Function, Aggregate, DataType。
3)Service Broker:提供了强大的、可伸缩的异步消息排队队列
4)ADO.NET 2.0与MARS;
5) T-SQL增强;快照隔离等;
6)镜像(Mirror)功能,能在故障发生几秒钟内实现负载切换。
7)工具的增强:Profile功能更强大、性能调整工具Advisor。集成的开发管理工具Management Studio含盖了企业管理器和查询分析器的功能。
8)其它一些服务:通知服务、报表服务集成与增强。
9)数据仓库与数据挖掘的重大改进。
所以,对于习惯使用SQL Server2000的用户,SQL Server2005也不难熟悉。SQL Server数据库体系结构的核心是服务器,即数据库引擎。SQL Server数据库引擎负责处理到达的数据库请求,并把相应的结果反馈给客户端系统。SQL Server充分利用了可设置优先权的多任务、虚拟内存和异步I/O功能。SQL Server数据库引擎可在多线程内核上创建,这样在处理多个事务的时候可获得较高的性能。相对于FOXPRO, ACCESS等个人数据库而言,SQL Server是一个功能完备的“正规”数据库管理系统。它包括的支持开发的引擎、标准的SQL语言、扩展的特性(如复制、OLAP、分析)等功能,是一些大型数据库系统如ORACLE才具备的特性。像存储过程、触发器等特性,也是个人数据库所没有的。
SQL Server2005数据库系统的服务器负责创建和维护表和索引等数据库对象,确保数据完整性和安全性,能够在出现各种错误时恢复数据。SQL Server2005的客户端可完成所有的用户交互操作,将数据从服务器检索出来后生成副本,以便在本地保留,也可以进行操作。
2.5 本章小结
本章介绍了运动会管理系统用到的相关技术,针对系统中使用到的技术做了简单的介绍。
第三章 系统需求分析
3.1 系统总体目标
(1)数据共享
建立统一的信息数据库,数据的规范化和制度化的运动会管理系统,实现持续一致性和数据的共享,提高信息查询效率和精度。
(2)实现各种运动会管理业务功能
该系统主要实现了赛事安排、成绩录入、成绩查询、代表队总分统计、项目名次统计、代表队管理、运动会信息管理、班级管理、岗位管理、比赛项目管理、工作人员信息管理、管理员用户管理、修改个人信息、修改登录密码等功能模块。
(3)规范运动会管理业务流程
实现运动会管理系统的规范化,全面、科学、系统地进行管理;提供多种信息咨询渠道,最大程度地发挥本系统的作用;提高工作效率和管理水平,完善运动会管理系统中的不足之处。
(4)实现现代化的管理手段
系统应具有清晰的界面,简单易操作;系统的不同用户应具有不同的操作权限;系统应具有数据库备份和恢复功能,提高数据的安全性;系统的运行应基于Internet,只要有网络就可以随时随地办公。
论文中涉及的系统,其实质对支持以下功能:首先,管理员可以对系统访问;其次,对于相关信息,管理员有权限进行完善、修改、删减,从而实现了管理整个运动会的人员信息。为了方便管理员的操作,要求系统简捷明了,登录界面具有人性化,此外,要注意下面各点:
1、实现功能手段:决定着系统性能的好坏。
2、程序的运行速度:速度的快慢意味着效率的高低。
3、及时的单元测试:能否做到第一时间发现、解决问题。
4、安全问题的性能可靠性:能否确保用户的安全使用。
3.2 系统可行性分析
1 操作的可行性分析
为了尽量便于用户的使用,登录界面尽量简捷、人性化。采取常见的 Window界面作为登录界面,而整个系统的开发业使用常见的 Java。这些策略使得用户不需很长时间就能很快对系统非常熟悉,可以熟练掌握操作方法。除此之外,系统为了方便维修人员,添加了数据字典等,并在界面登录上给出一定的提示,使得整个系统更具人性化,用户操作起来更为简单。
2 管理的可行性分析
企业要想长久地生存下去,首先必须具有良好的企业文化,其次在管理上体制要完善、制度要合理,再次要采用可持续发展的科学方法,最后还应与时俱进,不断进行企业改革,使得企业时刻适应社会的变革。其中最重要的就是管理方法一定要科学,只有这样企业的竞争力才能上升,才能得到长久的发展。
3 技术的可行性分析
(1)硬件可行性分析
论文中系统对于硬件方面的要求不存在特殊的地方,只要求硬件的配置一般即可,只需保证系统可以正常运行、具有较高的效率。若硬件水平较低,可能导致系统性能较低,效率较差,导致无法实现整个设计程序。目前看来,对硬件的要求很容易实现。因此,经过分析,硬件具有可行性。
(2)软件可行性分析
Java 语言可以提供常见的类似机制、动态的借口模型,设计较为集中。另外,采用 Java 语言可以很容易实现模块化以及信息的隐藏。另外,代码的复用也可以得到很好的体现。因此,考虑到系统的实际情况,论文将其作为开发语言。经过以上分析可知,软件具有可行性。
由此,我们从三个方面进行了可行性的分析,可以知道,系统的开发不具有问题。
3.3 系统功能需求分析
该系统主要实现了赛事安排、成绩录入、成绩查询、代表队总分统计、项目名次统计、代表队管理、运动会信息管理、班级管理、岗位管理、比赛项目管理、工作人员信息管理、管理员用户管理、修改个人信息、修改登录密码等功能模块。
3.4 系统非功能需求分析
非功能性需求,指的是在达到用户要求后必须具备的非功能需求的特征。对于软件类产品而言,经常涉及到以下几个方面:系统是否兼容、系统是否完整、系统功能是否可靠、系统是否适应技术要求等。这些特征不但直接决定了软件的性能,而且对功能性需求产生巨大的影响,然而系统的非功能性需求却是最容易被轻视的。
1 稳定性要求
整个应用软件系统能够连续7X24小时的工作。每1000小时运作的系统可用于至少999小时不小于故障间隔时间应大于1000小时。
系统以保证数据的一致性,完整性,要求达到99.99%的准确度。
用户输入的数据检查的合法性,确保畅通,并能自动纠正错误的数据处理。
2 系统的响应时间
一般操作的时间不超过5秒,和一般的统计不超过100秒。当操作员做很长一段时间运行一定的处理时间,该接口可以给小费。在返回的数据导致过度的响应时间太长,可提供局部反应,如分页读取数据,以减少等待时间。
3 数据处理的要求
系统不仅支持定期自动数据备份操作,而且还提供操作手动备份;提供多种数据输出格式(EXCEL、XML、TEXT等文件形式)而且该输出格式可以方便快捷的倒回原来系统中。真正使系统数据损坏,丢失等情况下,数据的备份倒带,数据恢复。和三年的系统在线数据保留要求
4 系统的完整性
系统正常运行、达到用户要求的前提保障。此类功能一般为必备的。主要包括下面几点:数据的管理、用户的管理、联机帮助、软件发布管理以及软件的在线升级。
5 系统的可扩充性与可维护性
系统是否支持技术、业务需求上的改变。我们知道,在这两方面出现变动时,必将导致整个系统的调整,为了减少修改系统的麻烦,这就要求系统在最初设计时就应当提前考虑,留有一定的改进措施。
所谓适应性,其实类似于可扩充性以及可维护性,主要体现在对变化的处理手段。不同点在于,适应性的前提是整个系统不进行变动。如软件具备较好的适应性,当一些技术上、业务需求上出现变动时,系统依然可以正常运行。这就要求,在设计之初,在各种条件、方式上就应该有所考虑。论文采用的开发平台为J2EE,经大量验证,此平台适应于系统的开发。
6 界面友好要求
系统采用多媒体技术,综合图、文、声、像及影视等多种信息手段,使用户操作起来轻松自如,界面美观,富有动感。运动会管理软件中所有办公事宜应该按照角色划分并细化到个人,系统能够根据每个用户的身份提供个性化的信息服务,保证组织每个成员不仅能根据自身角色完成工作流程要求的工作内容,还能对个人的工作信息进行管理(登记、查询、打印)。
3.5 系统开发环境与开发工具
1 系统的实现平台
硬件平台:
CPU:酷睿双核CPU;
内存:1G以上。
软件平台:
操作系统:Windows xp/ Windows 2003/ Windows 7/ Windows 2008;
数据库:SQL Server 2005 ;
浏览器:IE8.0,推荐使用IE8.0;
Web服务器:IIS5。0;
分辨率:1024*768以上。
2 开发工具的选择
用到的工具:
Myeclipse :用于前台应用程序的编写
PowerDesigner :制作数据流程图、概念数据模型、物理数据模型
SQL Server 2005 :用于数据库的建立,为前台提供服务
第四章 系统设计与实现
在设计体系的时候要做到全方位的站在客户的立场上考虑问题,让最终的产品能够顺应大众用户的需求;同时也是为了给企业自身内部的发展埋下伏笔。这一章节将重点突出对于体系的结构框架的设计描述上,以详细的标明每一个数据库的主体结构框架。
4.1 设计目标与原则
这一个体系的架构的设计要能够体现出和用户之间良好的交互性,且整个的板块界面要非常的清晰明了,能够为后期的数据扩展和保障数据安全护航,只有达到这一个目标才能够有更好的扩展空间,适应企业将来的发展需要。
1. 就整个体系的设计而言,这一系统必须要达到下述的要求:
(1) 数据的安全性
运动会管理系统中存贮的数据涉及到用户的隐私问题,需要保证数据的安全性,为了保证这些数据的安全性,整个的体系必须要有相关的安全防范措施来应对这些潜在的问题。
(2) 容易使用性
该系统的使用者应当对运动会管理相关的业务流程有一个大概的认知程度,而且还必须对计算机相关的操作熟悉。所以在设计系统操作窗口的时候应该顺应大众使用者的习惯,在相关的语句上也尽量的做到专一和专业。
(3) 灵活性
由于运动会管理这一块上涉及到各种各样的业务,而且主要包含的是对已有业务的一些更新和细化,另外还不断接受新的业务,因此设计出来的系统必须有能够接纳处理这些变化的能力。
(4) 可拓展延伸性
管理的模式会随着时代和业务量的变化而发生变化,因此这一系统就必须有可拓展延伸性,从而来达到引进新业务板块目的。
2. 从系统实际操作的层次来看,该系统应满足以下原则:
(1) 可靠性
实际中使用的系统每天都会处理很多的比较保密的资料,体系中的每一个小的缺陷会让用户的资料面临着泄漏的危险,因此要大力确保系统非常的可靠。
(2) 后期的维护保障性
学校内部项目经营的扩大,使得这一体系的后来的维护保障的工作量激增,所以在设计的初期要使得体系内部相关参数在后期维护时候便于操作。
(3) 经济高效性
在考虑了用户条件的前提下,还应该实现经济的高效性,尽量的少花钱多办事,为大众的投资降低相应的危险系数。
4.2 系统架构设计
4.2.1 总体架构设计
系统总体架构设计是将一个整体的任务量肢解成很多个细小而又非常详细的分量,把这些分量进行整合又可以得到整个大任务。其大概的任务步骤是:
1. 把系统细分成每一个子板块
2. 预先设计好各个子板块的作用
3. 设计好每一个子板块之间的逻辑关系
4. 设计好子板块的界面及模块间信息的传输
总体设计过程先确定可能达到最终目的的每一个小的具体方案,对于每一个小的方案而言,就得先找出在需求分析阶段的一些相关的资料。然后初步的设计出这些数据对应的软件,进行一些优化,得到一个相对可行的结构框架,做一些数据库设计模型,根据相关的标准做出最终的计划。系统运行流程如图4-1所示。
图4-1系统运行流程图
由图4-1 分析所示,该系统主要实现了赛事安排、成绩录入、成绩查询、代表队总分统计、项目名次统计、代表队管理、运动会信息管理、班级管理、岗位管理、比赛项目管理、工作人员信息管理、管理员用户管理、修改个人信息、修改登录密码等功能模块。
4.2.2系统网络拓扑结构图
本系统采用先进的B/S架构,该架构具有开发简、单共享性强、维护简单方便等诸多优点。本系统的网络拓扑图如图4-2所示:
图4-2系统的网络拓扑图
4.3 数据库设计
4.3.1 数据库的选定
目前主流数据库主要有Oracle、SQL Server、Mysql、Access等。本系统是一个比较小型的系统故而选择了SQL Server。SQL Server是一个关系型数据库,它的数据库引擎为关系型数据和结构化数据提供了更为安全而且可靠的存储功能。SQL Server与 Microsoft Visual Studio、Microsoft Office System 以及新的开发工具包(包括 Business Intelligence Development Studio)能够很好的集成。
4.3.2 数据库概念模型设计
数据库概念模型即系统的实体—关系模型。运动会管理系统的整体E-R图如图4-4所示。
图4-4运动会管理系统的整体E-R图
具体属性如下:
管理员:ID、用户名、姓名、性别、联系电话、联系邮箱、联系地址等。
工作人员:工作人员编号、姓名、岗位、联系电话、添加时间等。
比赛项目:ID、项目名称、项目说明、项目类别等。
岗位:ID、岗位名称、职责等。
班级:ID、系别、班级等。
运动员:学号、姓名、院系、班级、性别、联系电话、联系邮箱等。
名次:赛事编号、项目、学号、姓名、所属代表队、系别、班级、得分、名次等。
然后根据具体的功能需求,对本系统的E-R图进行细化从而得到几种实体—关系模型,以下为部分实体—关系模型。
(1)系统使用用户实体,如图4-5所示。
图4-5 用户实体图
(2)名次类实体图,如图4-6所示。
图4-6 名次类实体图
4.3.4 数据库逻辑设计
本系统主要用到了多张张数据表,部分表单如下。
1、用户信息表。用于存储用户信息。
表4-1 用户信息表
字段名称 | 数据类型 | 长度 | 是否允许空 | 是否为主键 |
ID | int | 11 | 否 | 是 |
用户名 | varchar | 50 | 是 | 否 |
姓名 | varchar | 50 | 是 | 否 |
性别 | varchar | 50 | 是 | 否 |
联系电话 | varchar | 50 | 是 | 否 |
联系邮箱 | varchar | 50 | 是 | 否 |
联系地址 | varchar | 50 | 是 | 否 |
2、名次信息表。用于存储名次信息。
表4-2名次信息表
字段名称 | 数据类型 | 长度 | 是否允许空 | 是否为主键 |
赛事编号 | int | 11 | 否 | 是 |
项目 | varchar | 50 | 是 | 否 |
学号 | varchar | 50 | 是 | 否 |
姓名 | varchar | 50 | 是 | 否 |
所属代表队 | varchar | 50 | 是 | 否 |
系别 | varchar | 50 | 是 | 否 |
班级 | ||||
得分 | ||||
名次 |
4.4系统设计与实现
4.4.1 数据库连接实现
数据库连接实现代码:
public Connection getConn()
{
try
{
if(conn==null||conn.isClosed()){
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=sportsmeet;User=sa;Password=zhangqiuyue");
}}
catch(Exception e)
{
e.printStackTrace();
}
return conn;
}
4.4.2 系统登录实现
系统登录界面效果如图4-7所示。
图4-7 系统登录界面效果
系统登录实现代码:
if(ac.equals("login"))
{
String pagerandom = request.getParameter("pagerandom")==null?"":request.getParameter("pagerandom");
String random = (String)request.getSession().getAttribute("random");
if(!pagerandom.equals(random)&&request.getParameter("a")!=null)
{
request.setAttribute("random", "");
go("/admin/login.jsp", request, response);
}
else{
String username = request.getParameter("uname");
String password = request.getParameter("upass");
String utype = request.getParameter("utype");
request.getSession().setAttribute("utype", utype);
List<HashMap> list = dao
.select("select * from sysuser where utype='"+utype+"' and uname='"
+ username + "'");
if (list.size() == 1) {
HashMap map = list.get(0);
List<HashMap> ulist = dao
.select("select * from sysuser where utype='"+utype+"' and uname='"
+ username + "' and upass='" + password
+ "'");
if (ulist.size() == 1&& password.equals(map.get("upass").toString())) {
request.getSession().setAttribute("admin", map);
gor("admin/index.jsp", request, response);
} else {
request.setAttribute("error", "");
go("/admin/login.jsp", request, response);
}
} else {
request.setAttribute("error", "");
go("/admin/login.jsp", request, response);
}
}
}
4.4.3 赛事安排模块实现
赛事安排模块实现了赛事信息的添加、查询、修改、删除等功能。赛事安排模块实现界面效果图如图4-8所示。
图4-8 赛事安排模块实现界面效果图
赛事安排模块实现代码如下:
new CommDAO().delete(request,"arrange");
if(request.getParameter("bnoid1")!=null){
new CommDAO().commOper("update arrange set bno ='' where id="+request.getParameter("bnoid1"));
}
if(request.getParameter("bnoid2")!=null){
new CommDAO().commOper("update arrange set bno ='' where id="+request.getParameter("bnoid2"));
}
String sql = "select * from arrange where 1=1 " ;
if(!pbno.equals("")){
sql+= " and bno like'%"+pbno+"%' " ;
}
if(!startbno.equals("")){
mmm.put("startbno",startbno) ;
sql+= " and bno >'"+startbno+"' " ;
}
if(!endbno.equals("")){
mmm.put("endbno",endbno) ;
sql+= " and bno <'"+Info.getDay(endbno,1)+"' " ;
}
if(!pxm.equals("")){
sql+= " and xm like'%"+pxm+"%' " ;
}
if(!startxm.equals("")){
mmm.put("startxm",startxm) ;
sql+= " and xm >'"+startxm+"' " ;
}
if(!endxm.equals("")){
mmm.put("endxm",endxm) ;
sql+= " and xm <'"+Info.getDay(endxm,1)+"' " ;
}
if(!pctime.equals("")){
sql+= " and ctime like'%"+pctime+"%' " ;
}
if(!startctime.equals("")){
mmm.put("startctime",startctime) ;
sql+= " and ctime >'"+startctime+"' " ;
}
if(!endctime.equals("")){
mmm.put("endctime",endctime) ;
sql+= " and ctime <'"+Info.getDay(endctime,1)+"' " ;
}
sql +=" order by id desc ";
String url = "arrangecx.jsp?1=1&bno="+pbno+"&xm="+pxm+"&ctime="+pctime+"";
ArrayList<HashMap> list = PageManager.getPages(url,5, sql, request );
for(HashMap map:list){ %>
4.4.4 成绩查询模块实现
成绩查询模块实现了赛事信息的查询、修改、删除等功能。成绩查询模块实现界面效果图如图4-9所示。
图4-9 成绩查询模块实现界面效果图
成绩查询模块实现代码如下:
String psno = request.getParameter("sno")==null?"":request.getParameter("sno");
String startsno = request.getParameter("startsno")==null?"":request.getParameter("startsno");
String endsno = request.getParameter("endsno")==null?"":request.getParameter("endsno");
String psxm = request.getParameter("sxm")==null?"":request.getParameter("sxm");
String startsxm = request.getParameter("startsxm")==null?"":request.getParameter("startsxm");
String endsxm = request.getParameter("endsxm")==null?"":request.getParameter("endsxm");
String puname = request.getParameter("uname")==null?"":request.getParameter("uname");
String startuname = request.getParameter("startuname")==null?"":request.getParameter("startuname");
String enduname = request.getParameter("enduname")==null?"":request.getParameter("enduname");
String pdbd = request.getParameter("dbd")==null?"":request.getParameter("dbd");
String startdbd = request.getParameter("startdbd")==null?"":request.getParameter("startdbd");
String enddbd = request.getParameter("enddbd")==null?"":request.getParameter("enddbd");
4.4.5 运动员信息管理模块实现
运动员信息管理模块实现了运动员信息的添加、删除、修改、查询等功能。终端管理模块实现界面效果图如图4-10 所示。
图4-10 运动员信息管理模块实现界面效果图
运动员信息管理模块实现代码如下:
String puname = request.getParameter("uname")==null?"":request.getParameter("uname");
String startuname = request.getParameter("startuname")==null?"":request.getParameter("startuname");
String enduname = request.getParameter("enduname")==null?"":request.getParameter("enduname");
String ptname = request.getParameter("tname")==null?"":request.getParameter("tname");
String starttname = request.getParameter("starttname")==null?"":request.getParameter("starttname");
String endtname = request.getParameter("endtname")==null?"":request.getParameter("endtname");
new CommDAO().delete(request,"sysuser");
if(request.getParameter("unameid1")!=null){
new CommDAO().commOper("update sysuser set uname ='' where id="+request.getParameter("unameid1"));
}
if(request.getParameter("unameid2")!=null){
new CommDAO().commOper("update sysuser set uname ='' where id="+request.getParameter("unameid2"));
}
String sql = "select * from sysuser where 1=1 " ;
if(!puname.equals("")){
sql+= " and uname like'%"+puname+"%' " ;
}
4.4.6 比赛项目管理模块实现
比赛项目管理模块实现了比赛项目的查询、修改、添加、删除等功能。比赛项目管理模块实现界面效果图如图4-11所示。
图4-11 比赛项目管理模块功能实现界面效果图
比赛项目管理模块实现代码如下:
<%
String pxname = request.getParameter("xname")==null?"":request.getParameter("xname");
String startxname = request.getParameter("startxname")==null?"":request.getParameter("startxname");
String endxname = request.getParameter("endxname")==null?"":request.getParameter("endxname");
String pxtype = request.getParameter("xtype")==null?"":request.getParameter("xtype");
String startxtype = request.getParameter("startxtype")==null?"":request.getParameter("startxtype");
String endxtype = request.getParameter("endxtype")==null?"":request.getParameter("endxtype");
%>
4.4.7 管理员用户信息模块实现
管理员用户信息模块实现了管理员用户信息的添加、删除、修改、查询等功能。管理员用户信息模块功能实现界面效果图如图5-12所示。
图5-12 管理员用户信息模块功能实现界面效果图
管理员用户信息模块功能实现代码如下:
new CommDAO().delete(request,"sysuser");
if(request.getParameter("unameid1")!=null){
new CommDAO().commOper("update sysuser set uname ='' where id="+request.getParameter("unameid1"));
}
if(request.getParameter("unameid2")!=null){
new CommDAO().commOper("update sysuser set uname ='' where id="+request.getParameter("unameid2"));
}
String sql = "select * from sysuser where 1=1 " ;
if(!puname.equals("")){
sql+= " and uname like'%"+puname+"%' " ;
}
if(!startuname.equals("")){
mmm.put("startuname",startuname) ;
sql+= " and uname >'"+startuname+"' " ;
}
if(!enduname.equals("")){
mmm.put("enduname",enduname) ;
sql+= " and uname <'"+Info.getDay(enduname,1)+"' " ;
}
if(!ptname.equals("")){
sql+= " and tname like'%"+ptname+"%' " ;
}
if(!starttname.equals("")){
mmm.put("starttname",starttname) ;
sql+= " and tname >'"+starttname+"' " ;
}
if(!endtname.equals("")){
mmm.put("endtname",endtname) ;
sql+= " and tname <'"+Info.getDay(endtname,1)+"' " ;
}
sql +=" and (1!=1 " ;
管理员%' " ;
sql +=" ) ";
sql +=" order by id desc ";
String url = "sysusercx.jsp?1=1&uname="+puname+"&tname="+ptname+"";
ArrayList<HashMap> list = PageManager.getPages(url,5, sql, request );
for(HashMap map:list){ %>
第五章系统测试
5.1 软件测试及工具
5.1.1 软件测试
测试系统不仅是检验系统是否达到相应的功能,你也需要检查是否存在系统功能缺陷。进行试验前,根据系统的总体情况,制定测试计划,并严格按照计划进行。为了更真实的模拟实际环境,力求完美的测试用例设计。不仅要考虑到正确的输入和输出,而且系统的能力来检查错误消息处理。在性能方面,通过设置场景,虚拟现实环境,响应用户请求的系统,为了找到系统性能瓶颈的存在,提出相应的修改。
5.1.2软件工具
软件测试工具是通过一些软件工具可以做一些简单的问题,在读者面前显示直观,使测试人员可以更好地找出软件中的错误
软件测试工具为软件的自动化测试工具和测试管理工具。
为提高测试效率,用软件代替部分手工输入值的软件测试工具的存在。
常用的软件测试工具分为:
[开源测试工具]:
开源测试管理工具:Bugfree、Bugzilla、TestLink、mantis
开源功能自动化测试工具:Watir、Selenium、MaxQ、WebInject
开源性能自动化测试工具:Jmeter、OpenSTA、DBMonster、TPTEST、Web Application Load Simulator
[TestDirector]:企业级测试管理工具,也是业界第一个基于Web的测试管理系统。
[Quality Center]:基于Web的测试管理工具,可以组织和管理应用程序测试流程的所有阶段,包括指定测试需求、计划测试、执行测试和跟踪缺陷。
[QuickTest Professional]:用于创建功能和回归测试。
[LoadRunner]:预测系统行为和性能的负载测试工具。
[其他工具与自动化测试框架]:Rational Functional Tester、Borland Silk系列工具、WinRunner、Robot等。
5.2 测试方法
5.2.1功能测试
从用户的角度来看,功能测试,系统提供的各种功能进行测试,主要是黑盒测试。它是系统作为一个黑盒子,系统的内部结构不考虑P [ 3 ] P的具体方法和系统通过逐项检查系统的各种功能完善,输入正确的数据,可以得到所期望的输出,输入错误信息时,系统可以处理。
5.2.2性能测试
性能测试是模拟各种正常和异常通过自动化测试工具对系统性能测试的峰值负载条件。负载测试和压力测试都是性能测试,两者可以结合起来。通过载荷试验确定在不同工作负载下系统的性能,目标是测试如果负荷逐渐增加,对系统的性能变化。压力测试是通过识别瓶颈或性能点没有收到一个系统,以获得最大的服务水平测试系统可以提供。
5.3 系统配置要求
CPU:酷睿双核CPU;
内存:1G以上。
或者
CPU:AMD Athlon(tm) 64 X2 Dual Core Processor 3800+
内存:1G
操作系统:Microsoft windows XP Professional 版本 2002 Service Pack 3
5.4 测试内容
登录模块测试
管理员登录界面如图5-1所示,管理员需要输入正确的用户名和密码才能登录系统。不同权限的管理员可以进入系统之后,将有不同的操作。
图5-1 系统登录界面
测试用例设计
因为登录时输入的情况可能存在差异,有可能用户输入了错误的用户名和密码,或者正确的用户名和错误的密码等,所有在设计测试用例时,主要采用等价类划分和边界值测试的方法。测试用例如表5-1所示。
表5-1(a) 管理员登录模块测试用例表头
项目名称 | 管理员登录模块测试 | ||||
开发人员 | XXX | 模块名称 | 管理员登录模块 | ||
用例作者 | XXX | 参考信息 | 需求规格说明书、设计说明书 | ||
测试类型 | 功能测试 | 设计日期 | 2013-12-16 | 测试人员 | XXX |
测试方法 | 手动测试+自动测试 | 测试日期 | 2013-12-16 | 优先级 | 1 |
测试对象 | 测试管理员能否正常登录 | ||||
前置条件 | 正确的用户名admin和密码admin |
表5-2(b)管理员登录模块测试用例
用例编号 | 操作 | 输入数据 | 预期结果 | 实际结果 | 测试状态(P/F) |
1-1 | 输入正确的用户名和密码,点击“登录”按钮 | 用户名:admin 密码:admin | 成功登录 | 成功登录,进入系统 | P |
1-2 | 输入正确的用户名、正确的密码,点击键盘的“确定”键 | 用户名:test 密码:test | 成功登录 | 成功登录,进入系统管理主页 | P |
1-3 | 输入错误的用户,点击“登录”按钮 | 用户名:jjj 密码:123 | 显示提示信息“您输入的用户不存在!请重新输入” | 显示提示信息“您输入的用户不存在!请重新输入” | P |
1-4 | 用户名和密码为空,点击“登录”按钮 | 用户名: 密码: | 显示提示信息“您输入的用户不存在” | 显示提示信息“您输入的用户不存在” | P |
1-5 | 用户名为空,密码不为空,点击“登录”按钮 | 用户名: 密码:123 | 显示提示信息“您输入的用户不存在” | 显示提示信息“您输入的用户不存在” | P |
1-6 | 用户名不为空,密码为空,点击“登录”按钮 | 用户名:admin 密码: | 显示提示信息“您输入的密码不正确” | 显示提示信息“您输入的密码不正确” | P |
注:实际结果和输出状态在测试完成之后填写。
5.5 测试结果
从测试的结果来看,登录模块可以正常满足登录的需求。
5.6 本章小结
本章完成了运动会管理系统的测试,测试结果在预计的范围内,运行效果良好。本章首先介绍了软件测试相关方法以及相关的测试工具,然后再拿系统的登录模块进行了测试与讲解。
总 结
这里的毕业设计已基本完成,尽管执行过程不是很长,但准备的过程中也学习很多知识,但也意识到有很多自己的不足。对于这些控件是必须要在实践中应用才能够掌握的,通过在使用过程中摸索和参考MSDN已经基本掌握这些控件的常用属性和方法,感觉获益非浅。从系统资料的调查,系统分析设计,并经历了几个月的时间,以及几个月的努力,这一系统最终完成。显然,该系统仍有许多不成熟,在系统的设计过程中我有很多的技术过程中存在的不足的缺陷,在遇到难以解决的问题时也曾在“百度”“谷歌搜索专业网站和论坛寻找过答案,他们都为我的毕业设计的顺利完成贡献了很大的力量。
由于本人开发系统的能力有限,只完成了基本功能的一部分,一些真正有用的外围功能还不是很完善,界面设计的也不是很精致。但这毕竟是本人第一次正常设计开发出来能够稳定工作的系统,还是颇感欣慰的。
还有就是英语水平有待提高,遇到很多英语技术文档不能完全理解,你需要打开一个类似的“金山词霸”等实时翻译软件。虽然认识到英语水平直接影响系统开发水平。在以后的的编程工作以及学习中会有更大的信心,以及努力工作,加强对知识和学习的各个方面。使技术掌握更全面、更深刻的。
最后,希望老师能够批评指正,多提宝贵意见。
致 谢
紧张和繁忙的毕业即将结束,对系统的功能设计完成后,我真的高兴和骄傲。我的毕业期期间,很多老师,同学和朋友给了我无私的关心和帮助,在此,我要向他们表示衷心的感谢。
首先,我要感谢老师在学校毕业了我细心的照顾和帮助,并给了我很多的批判性和建设性的指导。
本次毕业设计使我受益匪浅。可以说,用计算机解决不可避免的沉重和低效的人工管理计算机的历史。在学习理论的过程,我已经掌握了基本的课程和专业课程的理论知识,还做了一些链接和计算机综合测试程序的设计,但设计的首次真正动手管理软件。在本次毕业设计中,我遇到了克服这些困难的过程中遇到许多困难,我各方面的能力,有了很大的改进,使我更好地将理论知识与实践提升专业技能的实践。从研究,需求分析,发现信息,结构设计,详细设计和调试的过程,到最后的书面手册,我终于想出了一个更完整,全面,租赁系统。通过这次毕业设计,我真的理解软件工程的全过程,既巩固了前面的理论知识,同时也奠定了良好的基础,我未来的工作。
当然,由于时间太短,我完成的系统不太完善,还有待进一步修订和完善。最后,请允许我再次感谢无私地帮助我毕业设计完成的老师,同学和朋友们表示最诚挚的谢意。
参考文献
[1] 李金海,张景元.Struts,Spring 和 Hibernate 的 J2EE 架构的研究和实现[J].山东理工大学学报(自然科学版)2006,(06).
[2] 明日科技. Java从入门到精通(第3版)[M]. 北京:清华大学出版社,2012.
[3] 蒋宗礼,马涛,唐好魁,闫明霞等.数据库技术及应用(第2版)[M].电子工业出版社,2010:43-65.
[4] 李兴华;Java开发实战经典 [M];北京:清华大学出版社;2009,8:30-40.
[5] 唐汉明,翟振兴,兰丽华,关宝军,申宝柱.深入浅出MySQL数据库开发、优化与管理维护[M].人民邮电出版社出版,2006-2.
[6] 李盛恩,王珊.数据库基础与应用(第二版)[M].北京:人民邮电出版社,2009:14-78.
[7] 孙卫琴:《精通Hibernate:Java对象持久化技术详解[M].电子工业出版社出版
[8] 刘瑞新,张兵义.大学计算机规划教材:SQL Server数据库技术及应用教程[M].电子工业出版社,2012,8.
[9] 夏昕, 曹晓钢 , 唐勇. 深入浅出Hibernate[M].电子工业出版社, 2005-6.
[10] 张德详.J2EE架构下校园网用户管理系统的分析与部分实现[J].青岛大学学报,2010,19(4):86-89.
[11] 邬继成.J2EE 开源编程精讲15讲[M],电子工业出版社,2008.1:41-114.
[12] 王珊,萨师煊.数据库系统概论[M].高等教育出版社,2006.5:198-235.
[13] 张孝祥.深入Java Web开发内幕——核心基础[M].北京:电子工业出版社.北京.2006.10.
[14] 舒红平.Web 数据库编程-java[M],西安电子科技大学出版社,2005:97-134.
[15] Stephanie Bodoff, Dale Green, Kim Haase et al. The J2EE Tutorial[M].Addison-Wesley Professional,2003.7(02)
[16] Wendy Boggs,Michael Boggs.Mastering UML with Rational XDE[M].Publishing House Of Electronics Industry,2003:11-56.
[17] Cay S.Horstmann,Gary Cornell著,叶乃文,邝劲筠,杜永萍.JAVA核心技术卷I:基础知识,程序设计教程[M].人民邮电出版社,2008.5:87-234.
[18] Bruce Eckel,饶若楠等译.Java 编程思想机械工业出版社[M],2005:124-234.
[19] 庞丽娜.Java 应用开发技术详解[M],科学出版社,2007:126-235.