毕业设计java运动会成绩管理系统.docx

上传人:b****5 文档编号:5800030 上传时间:2023-01-01 格式:DOCX 页数:32 大小:167.12KB
下载 相关 举报
毕业设计java运动会成绩管理系统.docx_第1页
第1页 / 共32页
毕业设计java运动会成绩管理系统.docx_第2页
第2页 / 共32页
毕业设计java运动会成绩管理系统.docx_第3页
第3页 / 共32页
毕业设计java运动会成绩管理系统.docx_第4页
第4页 / 共32页
毕业设计java运动会成绩管理系统.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

毕业设计java运动会成绩管理系统.docx

《毕业设计java运动会成绩管理系统.docx》由会员分享,可在线阅读,更多相关《毕业设计java运动会成绩管理系统.docx(32页珍藏版)》请在冰豆网上搜索。

毕业设计java运动会成绩管理系统.docx

毕业设计java运动会成绩管理系统

《JAVA程序设计》

课程设计报告

设计题目:

运动会成绩管理系统

学院名称:

信息工程学院

  

 

目录

一需求分析。

3

二概要设计。

3

三详细设计。

3

3.1数据库设计。

3

3.2模块及窗体设计。

3

3.2.1数据库模块设计。

4

3.2.2用户登录识别模块。

5

3.2.3主页面模块。

5

3.2.4运动员信息浏览模块。

6

3.2.5添加运动员信息模块。

6

3.2.6运动员信息查询修改模块。

7

3.2.7运动员信息查删除模块。

8

3.3主要程序代码。

8

四软件测试。

15

五总结。

23

参考资料:

.......................................................24

一需求分析

本系统的主要目的就是实现运动会成绩管理,使运动会成绩管理工作更加容易,从而提高工作效率,降低管理成本.

系统中需要对拥护身份进行管理,采取登陆进入系统的形式.

二概要设计

/************************************************************************

概要设计阶段主要是粗略描述整个软件的框架,并从业务的角度描述软件的模块、工作流程等。

项目的成功取决于设计的好坏,而概要设计则是整个设计的关键部分。

概要设计的主要任务是将用户的需求划分为不同的功能,然后将这些功能细分成模块,并给模块一些规则约束,以达到各个模块之间可以相互交流的目的。

概要设计关乎到系统的整体架构,因此想做好一个概要设计,不仅仅要熟悉用户的业务流程,还要具备相当丰富的设计经验。

2.1概要设计的原则

概要设计是根据系统分析的需求和工作环境的情况对整个软件的总体结构进行大致的设计。

概要设计要坚持以下几个原则。

(1)细分原则:

软件系统都是由很多不同的模块组成,当设计一套软件时,要先将所有的功能分解。

解决复杂问题的方法是将其分解成几个小问题,一个个来解决。

(2)提高代码重用性:

在面向对象设计中,首先考虑的就是代码的重用,一个好的设计,将来在升级换代时不需要太大的改动,节省了人力物力。

(3)从上而下层层分析:

概要设计要从整体出发,逐个剖析软件的功能,从上而下,先分析系统总的功能,然后一步步细分,直到最小的功能模块。

(4)一致性原则:

概要设计要求所有功能模块在定义时使用统一的规范。

(5)提高独立性,减少耦合:

各个模块与模块之间尽量减少关联,否则修改一个地方就会引起其他多处的变动,不符合面向对象的原则。

一般情况下,对类封装后,只允许对类进行扩展,而不能修改,而封装的类必须具有单一职责,既理论情况下不允许两个类共同完成一个功能。

(6)模块的大小要尽量适中:

不是结构算法越复杂的模块越好,模块的大小要根据实际工作目标和其他类的耦合紧密程度来决定。

经验表明,一个模块的规模不应过大,模块的总行数应控制在10~100行的范围内,最好为30~60行,这样理解和阅读都较方便。

过长的模块往往是分解不充分的表现,会增加阅读理解的难度;但小规模太多也会使模块之间联系变得复杂,增大系统在模块调用时传递信息所花费的开销。

由于概要设计是整个设计的重中之重,牵一发而动全身,所以要努力做一个好的概要设计,才能在今后软件开发过程中不再反复。

现在软件行业流行模式化驱动设计,将一些市场上比较成功的模式拿来用在自己的设计中。

2.2将用户需求模块化

根据概要设计的原则来分析一下本项目的用户需求,并最终转化成用程序语言描述的模块。

什么样的需求才是一个模块?

模块应该具备如下3个特征。

(1)输入和输出:

模块必须能被调用并且正确的返回调用,而且调用都是相对一个对象而言,这是模块独立性的一个体现。

(2)处理功能:

模块必须可以对调用的输入数据进行灵活的处理,并为输出准备好处理结果。

(3)程序代码:

用来实现模块功能的源代码。

2.3确定系统最终模块

概要设计中最重要的就是确定此项目包括哪些模块。

根据上两节讲述的设计原则和模块特征,将用户需求转化为下面的模块。

**************************************************************************/

2.4UML用例图

1.管理员权限

2.系统流程图

2.5模块设计

1数据库设计模块

2用户登录识别模块

3主页面模块

4运动员信息浏览模块

5运动员信息添加模块

6运动员信息查询修改模块

7运动员信息删除模块

三详细设计

3.1数据库设计

数据库名称:

yangyun

表名:

tablename

运动员信息表:

学号(INT型)

姓名(varchar)

班级(varchar)

项目名(varchar)

成绩(varchar)

1312210101

杨昀

13计本

100米

11.2S

1312210102

马凯

13金融

跳高

2.6M

1312210103

马嘉岐

14电子

50米短跑

14S

1312210104

刘飞

12英语

铅球

5M

1312210105

王青山

13信管

跳远

2.2米

1312210106

李连杰

14网络

1*400

45S

1312210107

任宇锴

13计本

跳高

2.8M

1312210108

乔欢

14网络

跳远

3.2M

1312210109

李小龙

15信管

4*400男子接力

40S

1312210110

周杰伦

13音乐

跳远

3.5M

1312210111

周星星

14表演

跳高

2.9M

1312210112

王泽林

15生物

铅球

6M

1312210113

刘德华

15表演

跳远

3.4M

1312210114

赵一德

13计本

跳远

3M

1312210115

周小华

14英语

跳高

2.5M

1312210116

王晶晶

15生物

4*400女子接力

50S

1312210117

刘华

15信管

铅球

6.9M

1312210118

刘毅

14英语

4*400男子接力

43S

1312210119

王缓缓

14网络

铅球

6.3M

3.2模块及窗体设计

3.2.1数据库模块设计

将数据库的连接包装在一个lianjie类中,以便其他模块能够轻松调用,避免每次重写数据库连接代码。

下表是他的基本属性

文件名

成员变量

成员方法

lianjie.java

Connectionconn

PreparedStatementps;

Statementstmt

ResultSetrs

Publicstaticintshanchu(String)

publicstaticintxiugai(String)

publicstaticintzhucezh()

3.2.2用户登录识别模块

代码封装在类Denlu,下表是他的基本属性

文件名

控件

成员方法

Denlu.java

JLabellabel1=newJLabel("管理员登录:

");

JLabellabel2=newJLabel("管理员:

");

TextFieldname

JLabellabel3=newJLabel("密码:

");

JPasswordFieldmima

JButtonbutton1=newJButton("登录");

JButtonbutton2=newJButton("取消");

publicDenlu()

3.2.3主页面

以下是它的基本属性

文件名

控件名称

Jiemian.java

JButtonbutton1_0=newJButton("运动员信息浏览");

JButtonbutton1_1=newJButton("添加运动员信息");

JButtonbutton1_2=newJButton("查询修改运动员信息");

JButtonbutton1_3=newJButton("删除运动员信息");

JButtonbutton1_4=newJButton("退出系统");

3.2.4运动员信息浏览

基本属性如下

文件名

控件名

Chakansuoyou.java

JTabletable;

JButtonbutton4_0=newJButton("刷新");

JButtonbutton4_1=newJButton("返回主页");

3.2.5添加运动员信息

基本属性如下

文件名

控件名

Tianjia.java

TextFieldnum=newTextField(20);

TextFieldname=newTextField(20);

TextFieldbanji=newTextField(20);

TextFieldxiangmuming=newTextField(20);

TextFieldchengji=newTextField(20);

Labellabel1_0,label1_1,label1_2,label1_3,label1_4,label1_5;

JButtonbutton1_0=newJButton("添加");

JButtonbutton1_1=newJButton("取消");

3.2.6运动员信息的查询与修改

基本属性如下

文件名

控件名

Chagai.java

TextFieldnum=newTextField(20);

TextFieldname=newTextField(20);

TextFieldbanji=newTextField(20);

TextFieldxiangmuming=newTextField(20);

TextFieldchengji=newTextField(20);

Labellabel1_0,label1_1,label1_2,label1_3,label1_4,label1_5;

JButtonbutton1_0=newJButton("修改");

JButtonbutton1_1=newJButton("取消");

JButtonbutton1_2=newJButton("查询");

3.2.7删除运动员信息

3.3主要程序代码

1.登陆主页:

publicclassDenluextendsJFrame{

TextFieldname=newTextField(20);

JPasswordFieldmima=newJPasswordField(15);

JFramef=newJFrame("榆林学院运动会成绩管理系统");

publicDenlu(){

f.setBounds(450,200,400,300);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setResizable(false);

f.setLayout(null);

JLabellabel1=newJLabel("管理员登录:

");

JLabellabel2=newJLabel("管理员:

");

JLabellabel3=newJLabel("密码:

");

label1.setFont(newFont("Serif",Font.BOLD,20));

label1.setBounds(0,0,300,50);

label2.setFont(newFont("Serif",Font.BOLD,15));

label3.setFont(newFont("Serif",Font.BOLD,15));

JButtonbutton1=newJButton("登录");

JButtonbutton2=newJButton("取消");

BHandlerh=newBHandler();

button1.addActionListener(h);

button2.addActionListener(h);

JPanelp1=newJPanel();

JPanelp2=newJPanel();

JPanelp3=newJPanel();

f.add(label1);

p1.setBounds(0,60,380,30);

p1.add(label2);

p1.add(name);

p2.setBounds(0,90,380,30);

p2.add(label3);

p2.add(mima);

p3.setBounds(0,150,420,40);

p3.add(button1);

p3.add(button2);

f.add(p1);

f.add(p2);

f.add(p3);

f.setVisible(true);

}

publicstaticvoidmain(String[]args){

Denlua=newDenlu();

}

publicclassBHandlerimplementsActionListener{

publicvoidactionPerformed(ActionEventevent){

if(event.getActionCommand()=="登录")

{

if(name.getText().equals("yangyun")&&mima.getText().equals("123"))

{

Jiemianzhuce=newJiemian();

}

else

JOptionPane.showMessageDialog(Denlu.this,"卡号或者密码不正确!

");

}

else

{

f.dispose();

}

}

}

}

2.主界面:

publicclassJiemianextendsJFrame{

JFramef=newJFrame("运动会成绩管理系统界面");

publicJiemian(){

JLabellabel1;

f.setBounds(400,150,600,450);

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.setResizable(false);

f.setLayout(null);

label1=newJLabel("欢迎进入榆林学院运动会成绩管理系统",SwingConstants.CENTER);

label1.setFont(newFont("Serif",Font.BOLD,25));

JButtonbutton1_0=newJButton("运动员信息浏览");

JButtonbutton1_1=newJButton("添加运动员信息");

JButtonbutton1_2=newJButton("查询修改运动员信息");

JButtonbutton1_3=newJButton("删除运动员信息");

JButtonbutton1_4=newJButton("退出系统");

BHandlerh=newBHandler();

button1_0.addActionListener(h);

button1_0.setFont(newFont("宋体",Font.BOLD,20));

button1_0.setSize(400,35);

button1_1.addActionListener(h);

button1_1.setFont(newFont("宋体",Font.BOLD,20));

button1_1.setSize(400,35);

button1_2.addActionListener(h);

button1_2.setFont(newFont("宋体",Font.BOLD,20));

button1_2.setSize(400,35);

button1_3.addActionListener(h);

button1_3.setFont(newFont("宋体",Font.BOLD,20));

button1_3.setSize(400,35);

button1_4.addActionListener(h);

button1_4.setFont(newFont("宋体",Font.BOLD,20));

button1_4.setSize(400,35);

JPanelp0=newJPanel();

JPanelp1=newJPanel();

JPanelp2=newJPanel();

JPanelp3=newJPanel();

JPanelp4=newJPanel();

JPanelp5=newJPanel();

p0.setBounds(0,0,600,60);

p0.add(label1);

p1.setLayout(null);

p1.setBounds(100,60,600,40);

p1.add(button1_0);

p2.setLayout(null);

p2.setBounds(100,120,600,40);

p2.add(button1_1);

p3.setLayout(null);

p3.setBounds(100,180,600,40);

p3.add(button1_2);

p4.setLayout(null);

p4.setBounds(100,240,600,40);

p4.add(button1_3);

p5.setLayout(null);

p5.setBounds(100,300,600,40);

p5.add(button1_4);

f.add(p0);

f.add(p1);

f.add(p2);

f.add(p3);

f.add(p4);

f.add(p5);

f.setVisible(true);

}

privateclassBHandlerimplementsActionListener{

publicvoidactionPerformed(ActionEventevent){

if(event.getActionCommand()=="运动员信息浏览")

{Chakansuoyoua=newChakansuoyou();}

elseif(event.getActionCommand()=="添加运动员信息")

{Tianjiab=newTianjia();}

elseif(event.getActionCommand()=="查询修改运动员信息")

{Chagaib=newChagai();}

elseif(event.getActionCommand()=="删除运动员信息")

{Shanchub=newShanchu();}

elseif(event.getActionCommand()=="退出系统")

{f.dispose();}

}

}

}

3.运动员信息浏览:

publicclassChakansuoyouextendsJFrame{

JFramef=newJFrame("查看所有运动员信息");

publicstaticObject[][]data=newObject[30][5];

JTabletable;

String[]lieming={"学号","姓名","班级","项目名","成绩"};

publicChakansuoyou(){

f.setBounds(400,150,600,450);

//f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//f.setResizable(false);

f.setLayout(null);

table=newJTable(data,lieming);

table.setEnabled(false);//表格不可编辑

JButtonbutton4_0=newJButton("刷新");

JButtonbutton4_1=newJButton("返回主页");

BHandlerh=newBHandler();

button4_0.addActionListener(h);

button4_1.addActionListener(h);

JPanelp1=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1