毕业论文-高校运动会管理系统设计与实现——以运动员成绩管理系

更新时间:2024-05-24 10:02:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本科毕业论文(设计)

题 目 名 称 高校运动会管理系统设计与实现

——以运动员成绩管理系统为例

学 院: 专 业: 班 级: 学 号: 姓 名: 指 导 教 师:

年 月 日

I

毕业论文(设计)

诚信承诺书

一、本人在毕业论文(设计)撰写过程中遵守学校有关规定,恪守学术规范,毕业论文(设计)是在指导教师的指导下独立完成的;

二、论文所使用的相关资料、数据、观点等均真实可靠,文中所有引用他人观点、材料、数据、图表均已注释说明来源;

三、论文无抄袭、剽窃或不正当引用他人学术观点、思想、学术成果及伪造、篡改数据的情况;

四、本人知晓学校对毕业论文(设计)中的抄袭、剽窃、弄虚作假等违反学术规范的行为将被严肃处理,并可能导致开除学籍、取消学士学位资格或注销并被追回已发放毕业证书、学士学位证书的严重后果;

五、若在学校组织的毕业论文(设计)检查、评比中,被发现有抄袭、剽窃、弄虚作假等违反学术规范的行为,本人愿意接受学校按有关规定给予的处理,并承担相应的责任。

承诺人签名:

年 月 日

II

目 录

中文摘要 .................................................................. 1 Abstract .................................................................. 2 一、

绪论 .............................................................. 3 1.高校运动会成绩管理系统开发背景及意义 ............................ 3 2.高校运动会成绩管理系统的现状 .................................... 4 3.高校运动会成绩管理系统开发的目标与创新点 ........................ 4

二、开发工具和开发环境的概述 .............................................. 5

1.开发工具Eclipse的概述 .......................................... 5 2.数据库:Microsoft SQL Server 2008概述 ........................... 5 3.JDBC数据库访问技术概述 .......................................... 6 4.java概述 ........................................................ 6

三、运动员成绩管理系统的总体设计 .......................................... 7

1.系统需求分析 .................................................... 7

1.1系统信息需求 ............................................... 7 1.2系统功能需求 ............................................... 7 2.数据库设计 ...................................................... 8

2.1 E-R模型构建 ............................................... 9 2.2数据库表的设计 ............................................ 10 2.3数据库系统的安全策略设计 .................................. 12 3.系统总体功能模块设计 ........................................... 13

3.1系统总体结构设计 .......................................... 13 3.2系统主要功能模块介绍 ...................................... 14 3.3主要功能模块的代码实现 .................................... 16

四、系统测试与展望 ....................................................... 22 五、结论 ................................................................. 23 参考文献 ................................................................. 24 致谢 ..................................................................... 25

III

高校运动会管理系统设计与实现

——以运动员成绩管理系统为例

中文摘要

高校运动会是体现学校校园文化和学校学生身体素质的最传统、最有效的方式之一。对

学生增强学生身心健康,培养学生抗挫折能力、培养坚韧顽强的意志品质、树立良好的合作意识和竞争意识具有不可替代的作用。

本论文以高校运动会运动员成绩管理系统设计与实现为例,旨在服务于高校运动会管理

者,目的是设计与实现一种利用信息技术、计算机技术进行运动会数据处理的高校、公正、科学的高校运动会管理系统。通过运用高校运动会运动员成绩信息管理系统使得高校举办运动会的整个过程实现系统化、自动化以及科学化,应用计算机数据库技术显著提高对运动会相关数据操作处理效率,从而提高高校运动会科学管理水平,实现高校运动会的高效性、科学性与公平性。

本文阐述了高校运动会运动员成绩管理系统设计与实现的开发背景、设计现状以及开发

目的,研究了基于C/S体系结构高校运动会成绩管理系统设计与实现。系统以windows8为操作系统、Microsoft SQL Server 2008为数据库平台,运用java面向对象程序设计语言以Eclipse为开发工具,采用面向对象分析方法,对高校运动会成绩管理系统进行了整体设计与模块设计,实现高校运动会成绩管理的需求功能。经过对该系统测试与试运行,系统能够基本完成高校运动会成绩管理工作的要求。

[关键词]:高校运动会;数据库;成绩管理系统

1

The university sports meeting management

system design and Implementation

--To the athletes' performance management

system as an example

Abstract

Universities Sports is one of the school campus culture and the physical quality of students the most traditional, the most effective way. To enhance students' physical and mental health of students, cultivate student ability to resist setback, tenacious will quality, establish a good cooperative consciousness and competition consciousness plays an irreplaceable role.

In this paper the Games athletes' performance management system design and implementation as an example, aims to serve the university sports meeting management, is to design and realize the motion data processing will be a use of information technology, computer technology, motion in justice, scientific management system. Through the use of the university sports meeting

management information system of college athletes in the Games held the whole process of system implementation, automation and scientific application of computer database technology,

significantly improve the games related data manipulation efficiency, so as to improve the scientific management level of University Games, achieve high efficiency, scientific and fairness of sports in Colleges and universities.

This paper expounds the athletes' performance management system design and implementation of the development background, design of the status quo and the development of the university sports meeting, study and implementation of the performance management system design based on C/S system structure of sports in Colleges and universities. The system takes windows8 as the operating system, Microsoft SQL Server 2008 as the database platform, using the object-oriented programming language Java Eclipse as the development tool. Using the object-oriented analysis method, the university sports performance management system is designed and the overall design of function module, the university sports performance management needs. After the system test and trial run, the system can basically complete the university sports management performance requirements.

[Keywords]:University sports; SQL; performance management system;

2

(1)对运动员信息的维护和管理,能够完成运动员信息的录入,修改和删除,并按一定

条件查询运动员信息,查询结果按名次排序。

(2)对用户信息的管理,能够完成信息的录入、修改和删除,并按一定条件查询信息。 (3)对项目信息的管理,能够完成信息的录入、修改和删除,并按一定条件查询信息。 (4)对运动员编号范围信息的管理,能够完成信息的录入、修改和删除,并按一定条件

查询信息。

(5)对参赛学院信息的管理,能够完成信息的录入、修改和删除,并按一定条件查询信

息。

(6)对最高记录信息的管理,能够完成信息的录入、修改和删除,并按一定条件查询信

息。

2.数据库设计

数据库是存放数据的仓库,只不过这些数据存在一定的关联,并按一定的格式存放在计算机上。数据库中非常重要的资源就是我们保存的数据,从而保证数据库的安全、正确、有效、可靠是非常重要的问题。数据库中数据的丢失或泄露都有可能对系统的使用者在经济上造成不可弥补的损失,因此;数据的安全永远都是人们探讨的热点问题,几乎所有的数据库管理系统都提供了数据保护功能,用来保证存储在数据库中的数据安全,有效的运行。在本管理系统的设计中,首先是通过在数据库建立一张用户表,表中存放着不同的用户,系统会根据用户的用户名和密码来决定用户的操作权限,还有就是通过struts2中的拦截器来拦截不同的用户的操作,通过上述两种方式解决了本系统中数据的安全问题。

在系统开发中,数据库设计是系统设计中非常重要的一个环节。数据是一切系统设计的基础,通俗的说,数据库设计就像高楼大厦的地基一样,如果设计不合理、不完善,将在系统开发过程中、甚至到后期的系统维护、功能变更和功能扩充时引起较多问题,严重时甚至要重新设计项目,重做大量完成的工作。

数据库系统的设计期间,针对数据库模型的构建和数据表的建立这两个方面来采取详细的分析,对系统中数据目标具体化来构建模型,最终在目标间的关系明确化,简化构建模型后的数据目标形成具体的数据。在数据库构建的过程中,通过搭建数据库关系模型的方式,使用Microsoft SQL Server 2008环境对数据库进行设计,最终分析得到数据流图如下:

8

图1

本文通过对数据库工具SQLServer2008的设计。在数据库构建的过程时所采取的就是数据库关系模型的方式来搭建的,首先通过数据库E-R图表示。

2.1 E-R模型构建

E-R图模型的组成是由实体、属性的联系。其中实体是一个数据的使用者,其代表软件系统中客观存在的生活中的实物,如运动员、用户、比赛项目等。实体的内涵用实体类型来表示。实体中的所有特性称为属性,如:运动员有姓名、性别、学院、成绩、名次等。在E-R图中,实体所对应的属性用椭圆型的符号线框表示出来,实体不会是单独存在的,实体和其他的实体之间是有着千丝万缕的联系的。举例某一个运动员参加某项比赛项目,其中的实体有\运动员\和\比赛项目\,它们之间的有着很多的联系。

在E-R模型(实体——关系模型)构建中,对系统中具体的每一个数据目标进行分析、研究得出数据库的信息模型特征。对数据中词典中的数据存储进行分析,得出运动员,项目,用户等数据存储,它们由自己的头信息另加若干细节项构成,用户与运动员之间的关系为M:N,而运动员与项目之间的关系为N:M。运动会成绩管理系统中所涉及的实体有:运动员、项目和用户。

经过对以上实体进行分析,找出其关系,不同权限用户可以对运动员参加的项目成绩实施不同管理,也可以全面查询运动员参赛成绩。得出实体——关系模型,构建E-R图如下所示:

9

图2 系统E-R模型图

2.2数据库表的设计

在软件开发中,数据库设计是和概要设计、基本设计同步进行的,在某些特殊应用中,

可能数据库还要优先于其它部分。因为说到根本,所有的应用程序,都是围绕着数据进行的,而系统所涉及的相关数据又通过建立不同数据表来实现数据存储,没有数据表的设计,其它设计就无从谈起了。

数据库的需求分析是系统功能划分和系统设计重要步骤之一,本文所开发的系统具备了

数据简单易懂,在完整的数据维持下,达到系统对数据的查找及应用、检索、排序和系统算法的达成。针对数据库E-R模型图的研究,文章设计的数据表重点有下面几个部分:比赛项目表、运动员编号表、用户管理表、运动员成绩表、最高纪录表。本系统中数据库表都是通过Microsoft SQL Server 2008来创建。首先创建一个数据库,将其命名称为Test,并创建数据库表,各表的介绍如下:

10

2.2.1比赛项目表

用于储存高校运动会比赛项目的基本信息,包括进行比赛的项目以及该项目所属类别,

如:项目为100米(男子),类别即为径赛。其中项目为主键,赛前工作管理人员将比赛项目录相关信息入数据库。其表结构如表1。

表1

字段名称 项目 类别

2.2运动员编号表

类型 Char Char 宽度 20 8 是否为空 NO Yes 用于储存与限制运动员编号,赛前工作管理人员将运动员编号范围录入数据库,定义运

动员所在学院编号范围,如:“信息与统计学院”运动员编号范围251~300,起止编号为251,终止编号为300。其表结构如表2。

表2

字段名称 学院 编号范围 起始编号 终止编号

2.2.3用户管理表

类型 Char Char Char Cher 宽度 20 8 8 8 是否为空 NO Yes Yes Yes 用于储存不同权限的用户,使用系统前需要通过注册用户才能登录系统,该数据表将超

级管理员、管理员以及普通用户等不同权限用户存储在数据库,其中用户名为主键。其表结构如表3.

表3

字段名称 用户名 密码 用户类型

2.2.4运动员信息表

类型 Char Char Char 宽度 20 20 10 是否为空 NO Yes Yes 用于记录运动员网上报名时的基本信息,包括报名时选择项目都放在此表中,运动员编号为主键,用户先注册基本信息后进行下一步的操作,选择比赛项目,通过提交按钮将所有运动员信息写入此表中,其表结构如表4。

11

表4

字段名称 运动员编号 姓名 性别 项目 学院 成绩 名次 日期 记录

2.2.5最高记录表

类型 Char Char char Char Char Char int data Char 宽度 8 20 4 20 20 12 4 8 4 是否为空 NO Yes Yes Yes Yes Yes Yes Yes Yes 用于存放在比赛过程中运动员所参加项目的破纪录情况,表中有以往运动员的原始纪录成绩及创造者,记录下破纪录运动员的成绩和时间。其表结构如表5所示。

表5

字段名称 项目 成绩 破纪录者 破纪录学院 破纪录地点

2.3数据库系统的安全策略设计

类型 Char Char char char char 宽度 20 20 20 20 20 是否为空 NO Yes Yes Yes Yes 数据库的安全性能直接涉及到系统各项数据信息的安全运行,安全的数据库系统策略能够有效地保护数据库,抵抗非法程序的访问和破坏防止不合法的访问和破坏。在实际的数据库安全策略措施方面典型的手法是:给数据库用户设置权限进行管理,从而杜绝了任何没有被授权用户进入系统查询相关数据库数据,进而对数据库数据的非法修改;给不同用户等级进行相应的权限设置能够很好的使各级用户在各自权限中访问各自的数据范围,从而降低了不同的一些普通用户跨越权限访问高层数据,导致相关误操作,给数据带来不必要的破坏。作为高校的运动会成绩管理系统,其数据库中数据量不是很大,但是其分布性来看,数据分布比较分散,用户利用客户端登录也比较分散,所以多用户的操作使得系统在数据库设计时要严格的考虑其安全性能。

12

3.系统总体功能模块设计

3.1系统总体结构设计

高校运动会成绩管理系统为高校运动会组织者与参赛者提供运动成绩信息的录入、查询

与修改,是组织者与参赛者成绩信息查询与管理的平台。管理者可以及时添加和修改运动会中运动员产生的各类成绩信息。本系统根据高校运动会成绩管理的需求,设计以下五个模块:用户管理模块、赛前管理模块、成绩管理模块、成绩查询模块、帮助管理模块。

为详细描述系统模块功能,在系统功能模块划分的基础上,对相应系统的实体/关系图进

行功能分解,得到含义明确、功能单一的单元功能模块,从而得到系统总体结构模块设计图。如下图所示:

图3 系统总体结构设计

13

3.2系统主要功能模块介绍

3.2.1用户管理模块

系统用户权限(系统管理员、管理员、普通用户)、删除/修改用户权限通过用户管理模块来设计,此外,用户管理模块实现了修改用户管理密码。系统注册界面用户只能注册普通用户,系统管理员可以通过对普通用户的权限设计指定管理员,其中管理员可以对全体运动员成绩录入、修改与查询,而普通用户只能对运动员成绩进行查询操作,普通用户密码三次认证不通过,则用户将被锁定,只有管理员或系统管理员解锁后,才能再次登录。模块主要功能界面展示如下:

图4 图5

3.2.2赛前管理模块

赛前管理模块是主要完成运动会赛前事务,可以对比赛项目、参赛学院和项目记录的添

加、修改与查询,此外赛前管理模块能对参赛学院运动员编号范围查询。模块主要功能界面展示如下:

图6 图7

14

3.2.3成绩管理模块

成绩管理模块能够管理运动员比赛成绩,实现对运动员成绩的录入、修改、删除与查询,

完成各参赛学院成绩统计并排名。查询运动员成绩是否破纪录,统计运动会全体运动员比赛成绩。实现按编号或姓名查询运动员的成绩,记录、查询本次运动会中破纪录的运动员信息,按学院查询本学院比赛情况。模块主要功能界面展示如下:

图8 图9

3.2.4成绩查询模块

成绩查询模块能够查询运动员成绩信息、项目成绩信息、学院成绩信息、每日成绩、记录信息,实现以运动员编号/姓名、参赛学院、比赛项目为条件进行查询的功能。模块主要功能界面展示如下:

图10 图11

3.2.5帮助管理模块

帮助管理模块实现调用文本内容对运动员成绩管理系统各功能模块的操作介绍,包括用户管理帮助、赛前管理帮助、成绩管理帮助以及成绩查询。模块主要功能界面展示如下:

15

图12

3.3主要功能模块的代码实现

3.3.1系统界面连接数据库的代码实现

Class.forName(\String url = \Connection conn=DriverManager.getConnection(url,\

3.3.2登录界面的代码实现

public void actionPerformed(ActionEvent e) { if(e.getSource()==b2){new add_user();}

else if(t1.getText().equals(\请输入用户

名!\

else if(e.getSource()==t1){t2.requestFocus();}

else if(t2.getText().equals(\请输入密码!

\

else if(e.getSource()==t2||e.getSource()==b1)

try{

Class.forName(\ String url = \

Connection conn=DriverManager.getConnection(url,\ Statement ps=conn.createStatement(); ResultSet rs=null;

16

rs=ps.executeQuery(\用户管理 where 用户名

='\

if(!rs.next())

{ JOptionPane.showMessageDialog(null,\没有此用户请重新输入!\ t1.setText(\

}

else if(rs.getString(4).trim().equals(\锁定\

\此账号已被锁定,请求管理员解锁!\

else{rs=ps.executeQuery(\用户管理 where 用户名

='\

rs.next();

String msg=rs.getString(1);

if(rs.getString(2).equals(t2.getText().trim()))

{ new quanxian().user_type1(msg);new mainframe

Object>();this.dispose();}

else {

i++; if(i==3)

JOptionPane.showMessageDialog(null,\密码三次输入错误!\

{

new quanxian().user_type2(msg); this.dispose();}

else

{ JOptionPane.showMessageDialog(null,\密码输入错误!\ t2.setText(\ } }

}

}

catch (Exception err) { err.printStackTrace();JOptionPane.showMessageDialog(null,\

数据库连接出错!\

}

17

3.3.4成绩录入界面代码实现

else try{

Class.forName(\ String url = \

Connection conn=DriverManager.getConnection(url,\

Statement ps=conn.createStatement(); ResultSet rs0=null; ResultSet rs1=null; ResultSet rs2=null; ResultSet rs3=null;

rs0=ps.executeQuery(\运动员信息表 where 运动员编号

='\

String ss=new String(); if(rs0.next())

{ ss=rs0.getString(2);}

if(!ss.equals(t2.getText())&&!ss.equals(\

{JOptionPane.showMessageDialog(null, \姓名与编号不一致!\\n编号:

\ 姓名:\

else {

rs1=ps.executeQuery(\运动员信息表 where 运动员

编号='\项目='\

if(rs1.next()){JOptionPane.showMessageDialog(null,\此记录已经存

在\

t1.setText(\ t2.setText(\ t3.setText(\ t4.setText(\

t5.setText(\

cbx1.setSelectedItem(\\

}

18

else {

int num1=0,num2=0,num3=0;String s1=new String();String s2=new

String();

String s3=new String();String s4=new String(); num1=Integer.valueOf(t1.getText().trim());

rs2=ps.executeQuery(\运动员编号范围 where 学

院='\

if(rs2.next()) {

s1=rs2.getString(1); s2=rs2.getString(2); s3=rs2.getString(3);

s4=rs2.getString(4);

}

num2=Integer.valueOf(s3);num3=Integer.valueOf(s4);

if(num1num3){JOptionPane.showMessageDialog(null, \编号与学院不一

致\的编号范围是:\

else{rs3=ps.executeQuery(\项目表 where 项目

='\

if(rs3.next())

{ps.executeUpdate(\运动员信息表

values('\cbx2.getSelectedItem().toString()+\\.toString()+\

JOptionPane.showMessageDialog(null, \添加成

功!\ }

}

19

} }

}

3.3.5成绩查询/修改/删除界面代码实现

else try{

Class.forName(\ String url = \

Connection conn=DriverManager.getConnection(url,\

Statement ps=conn.createStatement(); ResultSet rs0=null; ResultSet rs2=null; ResultSet rs3=null;

rs0=ps.executeQuery(\运动员信息表 where 运动员编号

='\

String ss=new String(); if(rs0.next())

{ ss=rs0.getString(2);}

if(!ss.equals(t2.getText())&&!ss.equals(\

{JOptionPane.showMessageDialog(null, \姓名与编号不一致!\\n编号:

\ 姓名:\

else { int num1=0,num2=0,num3=0;String s1=new String();String

s2=new String();

String s3=new String();String s4=new String(); num1=Integer.valueOf(t1.getText().trim());

rs2=ps.executeQuery(\运动员编号范围 where 学

院='\

if(rs2.next())

{ s1=rs2.getString(1);

20

s2=rs2.getString(2); s3=rs2.getString(3);

s4=rs2.getString(4);

}

num2=Integer.valueOf(s3);num3=Integer.valueOf(s4); if(num1num3){JOptionPane.showMessageDialog(null, \编号与学院

不一致\的编号范围是:\

else if(e.getSource()==b2)

{int v=JOptionPane.showConfirmDialog(this, \确定修改

吗?\修改确认\

if(v==JOptionPane.OK_OPTION)

{ rs3=ps.executeQuery(\项目表 where 项目

='\

if(rs3.next())

{ ps.executeUpdate(\运动员信息表 set 姓名='\性别='\学院='\

\名次='\

日期='\成绩='\类别='\纪录='\运动员编号='\ 项目='\

JOptionPane.showMessageDialog(null, \修改成

功!\ }

}

}

else{int v=JOptionPane.showConfirmDialog(this, \确定删除

这条记录吗?\删除确认\

if(v==JOptionPane.OK_OPTION)

{ rs3=ps.executeQuery(\项目表 where 项目

='\

21

if(rs3.next())

{ps.executeUpdate(\运动员信息表 where 运动员编号='\项目='\ JOptionPane.showMessageDialog(null, \删除成功!\ }

}

}

} }

四、系统测试与展望

随着社会的进步、计算机信息技术的飞速发展,为迎合各行各业人士的需要,国内外各大公司和企业争先恐后地设计开发出一系列不同规模、不同功能的软件系统产品。尤其近十几年的时间,软件系统的开发得到了前所未有的追捧,软件数量由此得到了空前的急剧增长。随着软件系统数量的不断增加,软件质量问题也逐渐被人们重视起来,因此,如何保证并加强软件质量成为各大企业研究和发展的重点,软件质量将成为保证企业长期屹立于激烈竞争的软件系统开发业之林的基石。

提高软件质量的主要方法在于做好系统需求分析和总体设计的前提下如何在软件系统开发过程中及系统开发后期进行有效地、全面地和正确地系统测试。由此,又出现了各种各样的软件测试方法,那么用什么样的测试方法才是更有效的、才能更好的保证软件质量又成为当前最主要问题。通常,对软件系统进行测试的方法多种多样,包括功能测试、性能测试、集成测试、单元测试等,最常用的系统测试方法为功能测试,又称为黑盒测试。功能测试主要是站在宏观的角度对系统的各个功能模块的实现结果进行测试,检测其功能是否按原设计要求正确地实现,运行的过程中是否稳定正常,当某项参数超过其规定的范围时是否有处理能力,若某事件等处于临界状态时是否能正确地处理等。这种测试只对系统的功能实现过程进行检测,并不直接关注其内部的结构安排或程序编写等问题。另一种十分常用的系统测试方法为白盒测试,该测试与功能测试方法恰恰相反,其所关注的问题并不是系统最终所实现的功能结果,而是关心其核心的程序和结构本身。白盒测试通过检测软件系统的内部结构或逻辑是否按原设计要求正确进行,检测系统中的每段程序代码是否将考虑到每一条通路的正

22

本文来源:https://www.bwwdw.com/article/fpo7.html

Top