足球联赛管理系统.doc
《足球联赛管理系统.doc》由会员分享,可在线阅读,更多相关《足球联赛管理系统.doc(36页珍藏版)》请在三一办公上搜索。
1、*实践教学* 兰州理工大学计算机与通信学院2010年春季学期 面向对象 课程设计题 目: 足球联赛积分管理系统 专业班级: 信息与计算科学06班 姓 名: 摆富有 学 号: 10240618 指导教师: 庞淑侠 成 绩: 前 言在面对对象方法中,对象和传递消息分别表现事物及事物间相互联系的概念。类和继承是是适应人们一般思维方式的描述范式。方法是允许作用于该类对象上的各种操作。这种对象、类、消息和方法的程序设计范式的基本点在于对象的封装性和类的继承性。通过封装能将对象的定义和对象的实现分开,通过继承能体现类与类之间的关系,以及由此带来的动态联编和实体的多态性,从而构成了面向对象的基本特征。面向对
2、象设计是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。 l 决定你要的类; 2 给每个类提供完整的一组操作; 3 明确地使用继承来表现共同点。 由这个定义,我们可以看出:面向对象设计就是“根据需求决定所需的类、类的操作以及类之间关联的过程。本次面向对象设计采
3、用JAVA实现足球积分管理系统的实现。 摘 要足球联赛采用主客场双循环赛制,胜一场得3分,平局各得1分,负一场得0分,联赛排名以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次(这在联赛结束后进行,联赛未结束则两队名次并列,本程序不做这方面要求)。该设计以足球联赛为背景,设计足球联赛积分管理系统程序。通过对该题目的具体设计分析,可以对面向对象程序设计的思想更加深入理解,可以达到熟练掌握Java语言的基本知识和技能,基本掌握面向对象程序设计的基本思路和方法,能够利用所学的基本知识和技能,解决简单
4、的面向对象程序设计问题。同时对程序设计风格有全面的强调,提高解决实际问题的能力。并且通过与数据库的连接,深化对数据库编程的理解和运用。关键词: 双循环赛制;面向对象;java;数据库编程;数据库 目 录一、概述1二、需求分析3三、总体设计4四、详细设计5五、 编码14六、测试20七、设计总结29致谢30参考文献31一、概述1 项目名称:足球联赛积分管理系统2 项目介绍:该项目用于对一个年度的足球联赛的各种信息进行管理,通过制作的专门界面,可以对球队、球员、比赛情况、各种统计信息进行管理。3 项目背景: 结合java面向对象程序设计和数据库编程中介绍的内容和以往所学的专业知识,开发一个足球联赛积
5、分管理系统。4 项目目的:掌握数面向对象程序设计原理以及sql sever 2008的基本操作,知道并且熟练掌握java语言中的基本方法和基本内容的运用,并能熟练使用结构化查询语言SQL语句,能在一个或多个数据库管理系统进行开发和管理,并结合面向对象程序开发语言JAVA进行项目的开发。5 开发环境:面向对象程序开发语言采用JAVA,数据库管理系统采用SQLSEVER 2008,集成开发环境使用my eclipse 8.5。二、需求分析问题分析是程序设计的第一步,其目的是理解题目的要求,明确程序的运行环境和方式,以及相关的限制条件。问题分析的基本内容包括确定程序的功能和性能、程序的输入输出数据的
6、来源、去向、内容、范围及其格式,程序的使用者、调用方式、人机交互要求,与其他程序的关系和交互方式,对通用性的要求和扩展的可能,以及性能和其他对程序的特殊要求和限制,如程序所占用系统资源的数量、对输入命令的响应速度等。在使用面向对象方法设计足球联赛积分管理系统时,除了对于具体问题具体分析之外,我们还应该理解系统主要元素之间的关系,所以,简要列举我们以下几点:1、 系统需求说明 a、要求利用面向对象的方法以及Java的编程思想来完成系统的设计;b、要求在设计的过程中,建立清晰的类层次; c、在系统设计中要分析和定义各个类,每个类中要有各自的属性和方法;d、在系统的设计中,要求运用面向对象的机制(继
7、承、派生及多态性)来实现系统功能。足球联赛积分管理系统是一个以足球联赛为背景,设计足球联赛积分管理系统程序。采用主客场双循环赛制,胜一场得3分,平局各得1分,负一场得0分,联赛排名以积分多者在前,当两队(或多队)积分相同时,则净胜球(即进球数与失球数之差)多者在前,若净胜球相同,则进球数多者在前,若仍相同,则抽签或踢附加赛决定名次。2、 系统资源说明面向对象程序开发语言采用JAVA,数据库管理系统采用SQLSEVER 2008,集成开发环境使用my eclipse 8.5。3、系统可行性分析该管理系统是以自主设计为主,通过对该系统的具体设计分析,可以对面向对象程序设计的思想更加深入理解,可以达
8、到熟练掌握Java语言的基本知识和技能,基本掌握面向对象程序设计的基本思路和方法,能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。同时对程序设计风格有全面的强调,提高解决实际问题的能力。并且通过与数据库的连接,深化对数据库编程的理解和运用。三、总体设计在对该系统有初步的规划之后,我们应该着手处理如何初步规划该系统的各主要模块以及基本的方法,前面已经提到,我们使用面向对象程序设计的思路,而且运用数据库编程的理论,所以我们应该按照具体的思路来设计相应的应用,以下简要概述该系统的具体设计:1.球队的管理:包括球队信息的添加、删除、修改和查询;2.球员的管理:包括球员信息的添加、删除、修
9、改和查询;3.比赛过程的管理:包括一场比赛的基本信息的录入,如参赛双方的球队名称、比赛日期、比赛结果、进球情况等;4.积分榜查询:按照联赛的积分规则查询各个球队的名次;5.射手榜查询:按照进球多少查询进球队员的名次。四、详细设计 针对系统的局部构思,可以设计该系统的功能模块如下所示 项目设计 数据库概念结构设计; 数据库逻辑结构设计; 数据库物理结构设计;4.1 项目设计 项目设计部分主要包括以下两部分: 1.系统模块设计2.界面设计4.1.1 系统模块设计图1系统模块设计4.1.2 界面设计主窗体球队管理球员管理比赛情况统计信息添加球队修改球队删除球队查询球队添加球员按姓名修改球员按球队和号
10、码修改按姓名删除球员按球队和号码删除查询球员积分榜射手榜图2界面设计4.2 数据库概念结构设计球队球员比赛进行参加属于名称主场主教练姓名号码位置身高体重出生日期轮次日期主队客队主队比分客队比分进球时间12MNPQ图20数据库概念结构设计4.3数据库逻辑模型结构设计4.3.1 逻辑模型设计球队表(Team)字段名数据类型宽度主码非空外码描述NAMEVARCHAR20是是否球队名称HOMEVARCHAR30否否否球队主场COACHVARCHAR20否否否主教练表1球队表4.3.2 逻辑模型设计球员表(Member)表2球员表4.33 逻辑模型设计比赛进程表(Course)表3比赛进程表4.3.4
11、逻辑模型设计进球表(Goal) 表4进球表4.3.5 逻辑模型设计积分榜(Score)字段名数据类型宽度主码非空外码描述PLACEINT否是否名次NAMEVARCHAR20是是否球队名称TURNINT否是否轮次WONINT否是否胜利场次EVENINT否是否平局场次BEATENINT否是否失败场次GOALINT否是否总进球数LOSTINT否是否总失球数NETINT否是否净剩球数POINTINT否是否积分表5积分榜4.3.6 逻辑模型设计射手榜(GoalScore)字段名数据类型宽度主码非空外码描述PLACEINT否是否名次NAMEVARCHAR20否是否球员姓名TEAMNAMEVARCHAR20
12、是是是球队名称,参照Team表的NAME字段NUMBERINT是是是球员球衣号码GOALSINT否是否进球数表6射手榜4.4 物理结构模型设计 在这里主要介绍如何连接数据库的方法和创建触发器的部分功能。由于方法比较多,现在采用jdbc驱动方式连接。4.4.1 用jdbc驱动方式:1.到微软官网上下载jdbc驱动包sqljdbc_3.0,解压后复制文件sqljdbc_3.0enuauthx86 sqljdbc_auth.dll到C:WindowsSystem32,并将解压文件中的sqljdbc4.jar的路径添加系统环境变量的CLASSPATH里。2.设置并打开sql server的TCP/IP
13、端口:打开SQL Server配置管理器-SQL Server 网络配置,MSSQL SERVER 的协议,TCP/IP设为启用,并右击选择属性,将IP地址端口设为1433. SQL Server配置管理器-SQL Native Client 10.0配置-客户端协议-右击TCP/IP协议-默认端口1433.3.在 My Eclipse 创建项目并为项目添加sqljdbc4.jar驱动包。1. 用windows验证方式连接数据库:加载数据库驱动程序 Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver);连接数据库String u
14、rl = jdbc:sqlserver:/localhost:1433;DatabaseName=test1;integratedSecurity=TRUE;conn = DriverManager.getConnection(url);完整代码:import java.sql.SQLException;import java.sql.Statement;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;public class Testpublic static void ma
15、in(String args)Connection conn;Statement stmt;ResultSet rs;try/加载数据库驱动程序,对于jdbc4版本可以不用写这段代码Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch(ClassNotFoundException ex)System.out.println(数据库驱动加载失败);String url = jdbc:sqlserver:/localhost:1433;DatabaseName=test1;integratedSecurity=TRUE
16、;String sql=select* from exa;try/连接数据库conn = DriverManager.getConnection(url);/建立Statement对象stmt=conn.createStatement();/执行数据库查询语句rs=stmt.executeQuery(sql);while(rs.next()int id=rs.getInt(id);String name=rs.getString(name); int age=rs.getInt(age);System.out.println(id:+id+tname:+name+tage:+age);if(r
17、s!=null)rs.close();rs=null;if(stmt!=null)stmt.close();stmt=null;if(conn!=null)conn.close();conn=null;catch(SQLException e)e.printStackTrace();System.out.println(数据库连接失败);2. 用sql server身份验证方式连接数据库:加载数据库驱动程序 Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver);连接数据库String url = jdbc:sqlserver:/
18、localhost:1433;DatabaseName=test1;conn = DriverManager.getConnection(url ,sa,123456);完整代码:import java.sql.SQLException;import java.sql.Statement;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;public class Testpublic static void main(String args)Connection conn;Sta
19、tement stmt;ResultSet rs;try/加载数据库驱动程序,对于jdbc4版本可以不用写这段代码Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver); catch(ClassNotFoundException ex)System.out.println(数据库驱动加载失败);String url = jdbc:sqlserver:/localhost:1433;DatabaseName=test1;String sql=select* from exa;try/连接数据库conn = DriverManager
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 足球联赛 管理 系统

链接地址:https://www.31ppt.com/p-4063618.html