足球联赛积分标准管理专业系统设计和实现含代码_第1页
足球联赛积分标准管理专业系统设计和实现含代码_第2页
足球联赛积分标准管理专业系统设计和实现含代码_第3页
足球联赛积分标准管理专业系统设计和实现含代码_第4页
足球联赛积分标准管理专业系统设计和实现含代码_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

序言本程序定义一个球队类,每个球队是均是这类对象。因为联赛中参赛队伍数是固定,所以可用对象数组来实现(当然也能够用链表结构)。每输入两个队比赛成绩,则对应队相关数据(比赛场数,赢场数,平场数,负场数,进球数,失球数,积分等)即可进行修改,比赛成绩录入完成,调用联赛排序方法(对象数组作为参数)排出名次并输出。假如成功进入足球联赛积分管理界面,以后你能够选择显示球队,此时能够查阅排名,也能够输入比赛结果,修改球队积分,录入球队积分,查询比赛积分;球队信息添加、删除、修改和查询。该项目用Java语言编写,用Eclipse作为开发工具,后台数据库采取SQLServer.本系统在设计上有所侧重,愈加强调信息完整性和查询功效,娱乐性较小,对界面要求不太高,整个界面相对朴实。而对于操作设计从人性化着手,方便管理人员操作。摘要该项目用于对一个年度足球联赛多种信息进行管理,经过制作专门界面,能够对球队信息、积分统计信息进行管理。球队信息管理:包含球队信息添加、删除、修改和查询;球队积分信息管理:包含球队积分录入、查询、修改、删除等。该项目用Java语言编写,用Eclipse作为开发工具,后台数据库采取SQLServer.本文具体介绍了足球联赛分数统计程序设计和实现该程序含有足球赛成绩输入,统计和输出等功效。关键字:足球联赛积分统计球队管理数据库正文1、系统分析和设计1.1系统分析设计要求:(1)完成球队,球员信息添加、删除、查找、修改功效(2)使用用户界面操作(3)使用数据库形式完成设计思绪:首先设计界面进入面板,在面板中添加菜单选项,并将要实现功效选项添加其中,然后对这些选项实施监听,实现其功效。该项目用于对一个足球联赛多种信息进行管理,经过制作专门界面,能够对球队、球员、比赛情况、多种统计信息进行管理。球队管理:包含球队信息添加、删除、修改和查询;积分管理:根据联赛积分规则查询各个球队积分。1.2主界面设计首先设计一个容器,然后再容器中添加菜单,在菜单中添加选项,并在容器中加入面板,面板布局设置为CardLayout,最终将面板添加进容器。功效实现:在录入、查询、修改和删除界面中使用JButton、JLabel、ButtonGroup、JRadioButton、JTextField、Choice为界面中加入对应组件,并对其进行监听,同时附加了文件流处理。功效模块划分以下:图1主界面结构图1.3各模块结构图系统功效模块图展示了该系统模块划分,是系统总体功效初步分析概括。管理员登录后,能够在主控界面查看统计分析信息,使用帮助信息,经过查看使用帮助信息能够了解系统操作注意事项和部分具体操作使用说明,熟悉系统操作规范后,管理员能够对球队及球队积分进行管理。主窗体主窗体球队管理积分管理添加球队查询球队修改球队删除球队积分查询积分录入积分修改积分删除系统管理欢迎界面退出图2各模块结构图2、具体设计2.1主界面类定义(1)组员变量见表2-1:组员变量描述变量类型名称面板InputTeamins面板ModifyTeammos面板DeleteTeamdes面板QueryTeamqus菜单栏JButtonBarbar菜单组JMenumenuSystemmenuStu菜单项JMenuItemitemWelitemExititemSearchitemAdditemEdititemDelete布局管理器CardLayoutcard表2-1关键组员变量表2.2类Database(1)组员变量见表2-2:组员变量描述变量类型名称实施SQL语句接口Statementstmt返回结果接口ResultSetrs数据库连接接口Connectionconn字符串(SQL语句、驱动)Stringsqlstrurl表2-2关键组员变量(2)方法见表2-3:方法名称返回类型功效备注Database无类型创建Database对象结构方法OpenConn无类型打开数据库连接无executeQueryResultSet实施SQL查询语句,返回结果集RS返回ResultSet类型结果集executeUpdate无类型实施SQL更新语句无closeStmt无类型关闭目前Statement对象无closeConn无类型关闭数据库连接无表2-3关键方法2.3各模块关键代码(1)主界面:packageStu;importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjava.io.*;publicclassMainWindowextendsJFrameimplementsActionListener{ privatestaticfinallongserialVersionUID=1L; /** *主窗口初始化 */ InputTeamins; ModifyTeammos; QueryTeamqus; DeleteTeamdes; InputScoreisc; DeleteScoredsc; QueryScoreqsc; ModifyScoremsc; //建立菜单栏 JMenuBarbar; //建立“系统管理”菜单组 JMenumenuSystem; JMenuItemitemExit; JMenuItemitemWel; //建立“球队管理”菜单组 JMenumenuStu; JMenuItemitemSearch; JMenuItemitemAdd; JMenuItemitemEdit; JMenuItemitemDelete; //建立“积分管理”菜单组 JMenumenuStu1; JMenuItemitemSearch1; JMenuItemitemAdd1; JMenuItemitemDelete1; JMenuItemitemEdit1; Filefile=null; CardLayoutcard; JLabellabel=null; JPanelpCenter; publicMainWindow(){ //生成“系统管理”组 menuSystem=newJMenu("系统管理"); itemWel=newJMenuItem("欢迎界面"); itemExit=newJMenuItem("退出"); //生成“球队管理”组 menuStu=newJMenu("球队管理"); itemAdd=newJMenuItem("录入球队信息"); itemSearch=newJMenuItem("查询球队信息"); itemEdit=newJMenuItem("修改球队信息"); itemDelete=newJMenuItem("删除球队统计"); //生成“积分管理”组 menuStu1=newJMenu("积分管理"); itemAdd1=newJMenuItem("录入积分信息"); itemSearch1=newJMenuItem("查询积分信息"); itemDelete1=newJMenuItem("删除积分统计"); itemEdit1=newJMenuItem("修改积分信息"); //添加全部菜单组 bar=newJMenuBar(); bar.add(menuSystem); bar.add(menuStu); bar.add(menuStu1); //添加“系统管理”菜单项 menuSystem.add(itemWel); menuSystem.add(itemExit); //添加“球队管理”菜单项 menuStu.add(itemAdd); menuStu.add(itemSearch); menuStu.add(itemEdit); menuStu.add(itemDelete); //添加“积分管理”菜单项 menuStu1.add(itemAdd1); menuStu1.add(itemSearch1); menuStu1.add(itemDelete1); menuStu1.add(itemEdit1); setJMenuBar(bar); //设置主窗口 label=newJLabel("足球联赛积分管理系统",JLabel.CENTER); label.setIcon(newImageIcon("images/welcome.jpg")); label.setFont(newFont("黑体",Font.BOLD,30)); label.setHorizontalTextPosition(SwingConstants.CENTER); //添加事件监听 itemExit.addActionListener(this); itemWel.addActionListener(this); itemAdd.addActionListener(this); itemSearch.addActionListener(this); itemEdit.addActionListener(this); itemDelete.addActionListener(this); itemAdd1.addActionListener(this); itemSearch1.addActionListener(this); itemDelete1.addActionListener(this); itemEdit1.addActionListener(this); //卡片布局管理器设置 card=newCardLayout(); pCenter=newJPanel(); pCenter.setLayout(card); ins=newInputTeam(); mos=newModifyTeam(); qus=newQueryTeam(); des=newDeleteTeam(); isc=newInputScore(); qsc=newQueryScore(); dsc=newDeleteScore(); msc=newModifyScore(); pCenter.add("欢迎界面",label); pCenter.add("录入界面",ins); pCenter.add("查询界面",qus); pCenter.add("修改界面",mos); pCenter.add("删除界面",des); pCenter.add("录入积分界面",isc); pCenter.add("查询积分界面",qsc); pCenter.add("删除积分界面",dsc); pCenter.add("修改积分界面",msc); add(pCenter,BorderLayout.CENTER); setTitle("足球联赛积分管理系统!");//设置窗口名 ImageIconicon=newImageIcon("images/icon.jpg");//设置最小化图标 setIconImage(icon.getImage()); validate(); setVisible(true); setBounds(250,200,440,390); //关闭窗口 setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE); addWindowListener(newWindowAdapter(){ publicvoidwindowClosing(WindowEvente){ intn=JOptionPane.showConfirmDialog(null,"确定退出吗?","确定对话框", JOptionPane.YES_NO_OPTION); if(n==JOptionPane.YES_OPTION) System.exit(0); } }); } //事件处理 publicvoidactionPerformed(ActionEvente){ //返回欢迎界面 if(e.getSource()==itemWel){ intok=JOptionPane.showConfirmDialog(this,"确定返回吗?","确定对话框", JOptionPane.YES_NO_OPTION); if(ok==JOptionPane.YES_OPTION) card.show(pCenter,"欢迎界面"); } //退出 elseif(e.getSource()==itemExit){ intn=JOptionPane.showConfirmDialog(this,"确定退出吗?","确定对话框", JOptionPane.YES_NO_OPTION); if(n==JOptionPane.YES_OPTION) System.exit(0); } //录入 elseif(e.getSource()==itemAdd){ ins.clearMess(); card.show(pCenter,"录入界面"); } //修改 elseif(e.getSource()==itemEdit){ mos.clearMess(); card.show(pCenter,"修改界面"); } //查询 elseif(e.getSource()==itemSearch){ qus.clearMess(); card.show(pCenter,"查询界面"); } //删除 elseif(e.getSource()==itemDelete){ card.show(pCenter,"删除界面"); } //积分录入 elseif(e.getSource()==itemAdd1){ ins.clearMess(); card.show(pCenter,"录入积分界面"); } //积分修改 elseif(e.getSource()==itemEdit1){ mos.clearMess(); card.show(pCenter,"修改积分界面"); } //积分删除 elseif(e.getSource()==itemDelete1){ card.show(pCenter,"删除积分界面"); } //积分查询 elseif(e.getSource()==itemSearch1){ qus.clearMess(); card.show(pCenter,"查询积分界面"); } } publicstaticvoidmain(Stringargs[]){ newMainWindow(); }}(2)连接数据库代码:packageStu;importjava.sql.*;importjavax.swing.*;//相关球队信息数据库操作类publicclassTeamBean{ Stringsql; ResultSetrs=null; StringsNum; StringsName; StringsScore; //添加球队信息 publicvoidstuAdd(Stringnum,Stringname) { DatabaseDB=newDatabase(); this.sNum=num; this.sName=name; if(sNum==null||sNum.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队号!","错误",JOptionPane.ERROR_MESSAGE); return; } elseif(sName==null||sName.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队名!","错误",JOptionPane.ERROR_MESSAGE); return; } else{ sql="insertintoTeam(snum,sname)values('"+sNum+"','"+sName+"')";//,'"+sSex+"','"+sGrade+"','"+sMajor+"','"+sBirth+"')"; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功添加一条新纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"保留失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } } } //修改球队信息 publicvoidstuModify(Stringnum,Stringname){ DatabaseDB=newDatabase(); this.sNum=num; this.sName=name; sql="updateTeamsetsnum='"+sNum+"',sname='"+sName+"'wheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功修改一条新纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"更新失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } } //删除球队信息 publicvoidstuDel(Stringnum){ DatabaseDB=newDatabase(); this.sNum=num; sql="deletefromTeamwheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功删除一纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"删除失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } } //依据球队号查询球队信息 publicString[]stuSearch(Stringnum){ DatabaseDB=newDatabase(); this.sNum=num; String[]s=newString[5]; if(sNum==null||sNum.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队号!","错误",JOptionPane.ERROR_MESSAGE); } sql="select*fromTeamwheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); rs=DB.executeQuery(sql); if(rs.next()){ s[0]=rs.getString("sname"); } else{ s=null; } } catch(Exceptione){} finally{ DB.closeStmt(); DB.closeConn(); } returns; } //修改球队积分信息 publicvoidstuModify1(Stringnum,Stringscore){ DatabaseDB=newDatabase(); this.sNum=num; this.sScore=score; sql="updateTeamsetsnum='"+sNum+"',score='"+sScore+"'wheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功修改一条新纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"更新失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } }//依据球队号查询球队积分信息publicString[]stuSearch1(Stringnum){ DatabaseDB=newDatabase(); this.sNum=num; String[]s=newString[5]; if(sNum==null||sNum.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队号!","错误",JOptionPane.ERROR_MESSAGE); } sql="select*fromTeamwheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); rs=DB.executeQuery(sql); if(rs.next()){ s[0]=rs.getString("score"); } else{ s=null; } } catch(Exceptione){} finally{ DB.closeStmt(); DB.closeConn(); } returns;}//删除积分信息publicvoidstuDel1(Stringnum){ DatabaseDB=newDatabase(); this.sNum=num; sql="deletefromTeamwheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功删除一纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"删除失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); }}//添加球队积分信息publicvoidstuAdd1(Stringnum,Stringscore){ DatabaseDB=newDatabase(); this.sNum=num; this.sScore=score; if(sNum==null||sNum.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队号!","错误",JOptionPane.ERROR_MESSAGE); return; } elseif(sScore==null||sScore.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队积分!","错误",JOptionPane.ERROR_MESSAGE); return; } else{ sql="insertintoTeam(snum,score)values('"+sNum+"','"+sScore+"')"; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功添加一条新纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"保留失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } }}}3、系统测试3.1测试环境Java语言用Eclipse作为开发工具后台数据库采取SQLServer3.2测试结果(1)主界面以下图所表示:图3-1主界面(2)球队管理菜单以下图所表示:图3-2球队管理菜单(3)积分管理菜单以下图所表示:图3-3积分管理菜单(4)球队录入界面以下图所表示: 图3-4球队录入界面(5)球队删除以下图所表示:图3-5球队删除(6)积分查询以下图所表示: 图3-6积分查询(7)积分录入以下图所表示:图3-7积分录入(8)积分修改界面以下图所表示:图3-8积分修改界面(9)系统管理界面以下图所表示:图3-9系统管理界面4、软件使用说明书为了很好管理足球联赛中球队信息和各球队积分信息,设计了此足球联赛积分管理系统。该系统使用说明以下:(1)此系统有三个界面:一系统管理界面;二球队管理界面;三积分管理界面;(2)进入系统后能够在以上三个选项中选择你所需要操作。(3)三个模块又由多个不一样小模块组成,依据需要选择对应操作。(4)关键界面以下图所表示:附录关键程序代码(带注释):(1)连接数据库类packageStu;importjava.sql.*;/***连接数据库类*/publicclassDatabase{ privateStatementst=null; ResultSetrs=null; privateConnectionct=null; Stringsql; Stringstrurl="jdbc:odbc:scmanage"; publicDatabase(){ } /** *打开数据库连接 */ publicvoidOpenConn()throwsException{ try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); ct=DriverManager.getConnection("jdbc:odbc:scmanage"); } catch(Exceptione){ System.err.println("OpenConn:"+e.getMessage()); } } /** *实施SQL查询语句,返回结果集RS */ publicResultSetexecuteQuery(Stringsql){ st=null; rs=null; try{ st=ct.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); rs=st.executeQuery(sql); } catch(SQLExceptione){ System.err.println("executeQuery:"+e.getMessage()); } returnrs; } /** *实施SQL更新语句 */ publicvoidexecuteUpdate(Stringsql){ st=null; rs=null; try{ st=ct.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); st.executeQuery(sql); mit(); } catch(SQLExceptione){ System.err.println("executeUpdate:"+e.getMessage()); } } publicvoidcloseStmt(){ try{ st.close(); } catch(SQLExceptione){ System.err.println("closeStmt:"+e.getMessage()); } } /** *关闭数据库连接 */ publicvoidcloseConn(){ try{ ct.close(); } catch(SQLExceptionex){ System.err.println("aq.closeConn:"+ex.getMessage()); } } publicstaticStringtoGBK(Stringstr){ try{ if(str==null) str=""; else str=newString(str.getBytes("ISO-8859-1"),"GBK"); } catch(Exceptione){System.out.println(e);} returnstr; }}(2)数据库操作类packageStu;importjava.sql.*;importjavax.swing.*;//相关球队信息数据库操作类publicclassTeamBean{ Stringsql; ResultSetrs=null; StringsNum; StringsName; StringsScore; //添加球队信息 publicvoidstuAdd(Stringnum,Stringname) { DatabaseDB=newDatabase(); this.sNum=num; this.sName=name; if(sNum==null||sNum.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队号!","错误",JOptionPane.ERROR_MESSAGE); return; } elseif(sName==null||sName.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队名!","错误",JOptionPane.ERROR_MESSAGE); return; } else{ sql="insertintoTeam(snum,sname)values('"+sNum+"','"+sName+"')";//,'"+sSex+"','"+sGrade+"','"+sMajor+"','"+sBirth+"')"; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功添加一条新纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"保留失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } } } //修改球队信息 publicvoidstuModify(Stringnum,Stringname){ DatabaseDB=newDatabase(); this.sNum=num; this.sName=name; sql="updateTeamsetsnum='"+sNum+"',sname='"+sName+"'wheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功修改一条新纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"更新失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } } //删除球队信息 publicvoidstuDel(Stringnum){ DatabaseDB=newDatabase(); this.sNum=num; sql="deletefromTeamwheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功删除一纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.showMessageDialog(null,"删除失败","错误",JOptionPane.ERROR_MESSAGE); } finally{ DB.closeStmt(); DB.closeConn(); } } //依据球队号查询球队信息 publicString[]stuSearch(Stringnum){ DatabaseDB=newDatabase(); this.sNum=num; String[]s=newString[5]; if(sNum==null||sNum.equals("")){ JOptionPane.showMessageDialog(null,"请输入球队号!","错误",JOptionPane.ERROR_MESSAGE); } sql="select*fromTeamwheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); rs=DB.executeQuery(sql); if(rs.next()){ s[0]=rs.getString("sname"); } else{ s=null; } } catch(Exceptione){} finally{ DB.closeStmt(); DB.closeConn(); } returns; } //修改球队积分信息 publicvoidstuModify1(Stringnum,Stringscore){ DatabaseDB=newDatabase(); this.sNum=num; this.sScore=score; sql="updateTeamsetsnum='"+sNum+"',score='"+sScore+"'wheresnum="+Integer.parseInt(sNum)+""; try{ DB.OpenConn(); DB.executeUpdate(sql); JOptionPane.showMessageDialog(null,"成功修改一条新纪录!"); } catch(Exceptione){ System.out.println(e); JOptionPane.s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论