文档详情

运动会成绩管理系统

re****.1
实名认证
店铺
DOCX
108.37KB
约19页
文档ID:545302164
运动会成绩管理系统_第1页
1/19

一、开发背景 3二、系统描述 3三、详细设计 51、模块功能 51.1、系统人员管理模块 51.2、运动员管理模块 61.3、运动员成绩管理模块 62、数据库结构设计 73、界面及代码设计 93.1、登录子系统开发 93.2、系统用户管理模块 113.3、运动员信息管理模块 153.4、运动员成绩管理模块 17四、心得体会 20五、参考文献 21一、开发背景当前,运动会已经在全国普遍开展, 许多学校每年都定期的举行不同规模的 田径运动会但是,在运动会举行过程中一直存在着参赛人数多, 项目设置复杂, 时间安排紧凑等问题, 而且这些问题能否解决直接关系着运动会的成功与否 另 一方面,人们对于比赛结果的实时性、准确性、安全性、可靠性的要求也越来越 高,而这些要求是人工操作很难实现的 同时竞赛组织者要尽量减少人为因素的 干扰,减少赛场作弊行为的发生, 还要为参赛的教练员和运动员及时准确地提供 竞赛的相关信息, 辅助进行竞赛的决策指导 因此, 计算机技术的融入就成为一 种必然,而且逐渐成为运动会信息管理的核心所在 根据调查,现在全国已经有不少学校在田径运动会举办过程中采用了现代化的计 算机技术进行运动会的系统管理, 有的已经达到了一个相当高的水平。

但是我们 发现这些运动会管理系统的设计和实现标准不一, 参差不齐, 而且更多的情况下 这些系统只是实现了对运动会的分数统计等功能, 在提供运动会的整个举办过程 中的人性化、 自动化服务等方面还有许多不足和欠缺 我们小组根据当前学校运 动会的开展组织情况, 结合运动会的组织原则和相关规定, 运用现代计算机技术, 以全新的模式设计开发了适合田径运动会的校级运动会管理系统 采用了本运动会管理系统后, 运动员在比赛前由院系统一输入个人信息即可, 这 样就方便了运动员的报名, 有错误时可以及时汇报修改 裁判员单独对各自的项 目进行管理, 保证上了比赛的公正、 公平每个项目都有单独的帐号和密码对应, 以保证成绩录入人员对自己管辖范围的唯一性和确定性 在成绩查询界面中可以 准确及时的查询到各参赛队伍、 各项目、各运动员的个人信息、 比赛成绩、 排名、 和团体加分的情况 以上运动会中各环节组织和编排工作的系统实现, 使大量繁 琐的人工组织编排任务通过简单方便的操作便可以实现, 大大减轻了运动会组织 人员的劳动强度,节省了大量物力、人力、财力,提高了工作效率,保证了数据 的实时性、准确性、安全性、可靠性,充分体现出了现代化的计算机技术在信息 采集、处理、和管理等方面的无可比拟的优越性。

二、系统描述本系统采用软件工程原理,使用面向对象的 Java编程环境编写校级运动会管理 系统,利用SQL Server数据库技术,对数据库进行了全面的开发系统主要包 括前台应用程序的开发以及后台数据库的建立和维护两个方面, 实现了运动员成绩数据库的创建及运动员成绩的输入、统计、浏览和维护,使得系统具有界面友 好,功能强大,易于维护的特点本校级运动会管理系统在功能实现方面主要分为以下几点:1) 运动员个人信息管理模块运动员管理与普通的用户管理基本类似,包 括用户的添加、修改、编辑和删除功能,参赛项目的维护例如有的运动员临时因伤不能参寒,有的又调整为可以参加某个项目(虽然严格说来,不允许运动员 临时更改参赛项目,但需要在系统中留有余地)2) 运动员成绩管理模块操作员可以对成绩进行录入,一旦提交则只能查 看不能修改管理员可以查看成绩并调整成绩, 因为前场工作人员可能犯错,需要 管理员进行更改,但日志中要对此更改进行记录运动员可以通过终端查看运动 成绩3) 权限管理模块管理员可以对操作人员进行信息维护,如增加前场成绩 录入人员,或者某位成绩录入人员调离岗位则取消其权限对于运动员可以匿名 查询某个项目的成绩。

综合以上情况,设计系统体系结构如图 1所示应用层提供诸如GUI的显示、事件的处理等;代理层是分离上层和具体数 据库访问层的,也可以称为业条层,这样的目的是当数据库发生变更时, 可以将 程序的改动缩减到最小数据库接口层是与具体的数据库进行交互, 对数据进行 提取、存入操作模块包是与数据库实体相对应的类定义, 也可以说与数据库中的每条记录相对应三、详细设计1、模块功能1.1、系统人员管理模块该模块实现系统人员的添加、修改、查询和删除,先在数据库中添加管理员帐户 管理员在用户管理方面拥有一切权限, 而普通用户只有修改个人密码、查询个人 信息、运动会比赛信息、比赛成绩及获奖情况的权限如图 2所示1.2、运动员管理模块该模块由管理员对运动员个人信息的录入、修改及删除功能普通用户可以实现对运动员个人信息的查询功能其功能层次如图 3所示图31.3、运动员成绩管理模块该模块实现管理员录入运动员的成绩、查询成绩、修改成绩删除查询到的成绩信息以及普通用户查询成绩其功能层次图如图 4所示2、数据库结构设计表1 运动会项目表(Sportitems)列名数据类型可否为空说明ItemidVARCHAR(20)NOT NULL体育项目编号ItemNameVARCHAR(50)NOT NULL项目名称ItemTypeVARCHAR(50)所属的运动类别voidVARCHAR(1)是否有效表2 运动员参赛项目表(ItemAttend)列名数据类型可否为空说明SportorIdVARCHAR(20)NOT NULL运动员编号ItemIdVARCHAR(20)NOT NULL体育项目编号ScoreVARCHAR(50)成绩voidVARCHAR(1)本条记录是否有效表3运动员个人信息表(Sportor)列名数据类型可否为空说明SportorldVARCHAR(20)NOT NULL运动员编号NameVARCHAR(50)NOT NULL运动员名称Gen derVARCHAR(1)性别。

M男,F女WeightFLOAT体重,单位KgHeigthFLOAT身高,单位cmAgeINT年龄GradeINT等级voidVARCHAR(1)是否参赛标志丫 为无效,已经被删 除N为有效,参 加本次比赛表4系统用户信息(SysUser)列名数据类型可否为空说明SysUserldVARCHAR(20)NOT NULL系统用户的编号NameVARCHAR(20)NOT NULL姓名PasswordVARCHAR(50)NOT NULL密码Gen derVARCHAR(1)性别RoleldVARCHAR(20)所属于的角色voidVARCHAR(1)用户是否有效表5系统用户角色(Roles)列名数据类型可否为空说明RoleldVARCHAR(20)NOT NULL角色编号RoleNameVARCHAR(50)角色名称voidVARCHAR(1)是否生效3 、界面及代码设计3.1、登录子系统开发由于每个系统中都涉及登录子系统, 因此在这里并不进行过多介绍, 只提供一个登录子系统的框架, 登录成功后程序的流程应根据登录用户的身份来 区别对待登录系统的界面如图 5 所示图5主要代码如下:public static void main(String[] args) {// TODO Auto-generated method stub/* 根据需要,打开下面运行开关 *//* 主登录窗口界面StartApp mainForm = new StartApp();mainForm.InitUI();*///运动员管理模块//new SportorManagement();////运动员成绩管理模块new SportorScoreManagement();////系统人员管理模块new SysUserManagement();//}public class LoginEvtHandle implements ActionListener{public void actionPerformed(ActionEvent e){try{if( (JButton)e.getSource() == jbtLogin ){ //根据用户登录身份,转向对应的界面 String UserName = jtxtUser.getText().trim(); String Password = jtxtPass.getText().toString(); EnumRole role UserRole.getUserRole( jcmbIdentify.getSelectedItem().toString().trim() );System.out.println("UserName:" + UserName + " Password:" + Password + " " + "Role :" + role);if( role == EnumRole.NOROLE ){ JOptionPane.showMessageDialog(null," 用户角色未设定,请单击 匿名登录访问系统! ","错误 ",JOptionPane.ERROR_MESSAGE);return;}else if( role == EnumRole.NOTSUPPORT ){JOptionPane.showMessageDialog(null," 用户角色不支持,请联系 管理员! ","错误 ",JOptionPane.ERROR_MESSAGE);return;}else if( role == EnumRole.SYSADMINISTRA TOR ){ //连接数据库,验证是否管理人员 RoleAccessProxy roleProxy = new RoleAccessProxy();if( roleProxy.ValidateUserExist(UserName,Password,RoleIdMapRoleName.SYSADMIN) == true )JOptionPane.showMessageDialog(null," 登 录 成 功 ! "," 正 确 ",JOptionPane.INFORMA TION_MESSAGE);else{ JOptionPane.showMessageDialog(null," 用户角色不支持,请 联系管理员! ","错误 ",JOptionPane.ERROR_MESSAGE);System.exit( - 1 );}}else if( role == EnumRole.SYSOPERATOR ){ //连接数据库,验证是否系统操作人员并转到相应界面 RoleAccessProxy roleProxy = new RoleAccessProxy();if( roleProxy.ValidateUserExist(UserName,Password,RoleIdMapRoleName.SYSOPERATOR) == tr。

下载提示
相似文档
正为您匹配相似的精品文档