基于Java+MySQL的学生成绩管理系统的设计与实现.docx 您所在的位置:网站首页 java的发展现状以及java名字的来历 基于Java+MySQL的学生成绩管理系统的设计与实现.docx

基于Java+MySQL的学生成绩管理系统的设计与实现.docx

2023-03-24 22:22| 来源: 网络整理| 查看: 265

基于Java+MySQL的学生成绩管理系统的设计与实现.docx

《基于Java+MySQL的学生成绩管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《基于Java+MySQL的学生成绩管理系统的设计与实现.docx(40页珍藏版)》请在冰豆网上搜索。

基于Java+MySQL的学生成绩管理系统的设计与实现.docx

德州学院信息管理学院

课程设计报告

实习名称 数据库课程设计

设计题目基于Java+MySQL的学生成绩管理系统的设计与实现

实习时间 2013617-2013630

专业班级 2011级计算机网络技术专

指导老师 王丽丽

教学单位(盖章)

小组分工情况:

学号

姓名

分工

201111007034

徐晴

代码编写

201111007017

梁庆美

代码编写

201111007014

赵玉翠

文档编写

201111007030

郭文晓

文档编写

201111007018

张翠萍

PPT设计

201111007005

铁文娇

PPT设计

二0一三年六月三十日

目录

摘要 1

1引言 1

1.1问题的提出 1

1.2国内外研究的现状 1

1.3目的与分析 1

2程序的主要功能 2

2.1添加功能 2

2.2删除功能 2

2.3显示功能 2

2.4查找功能 2

2.5修改功能 2

3程序运行平台 2

4总体设计 2

5数据库设计 3

5.1数据库概念设计 3

5.2表结构 4

5.3视图 4

6模块分析 5

6.1添加模块 5

6.2显示模块 8

6.3修改模块 10

6.4查找模块 13

6.5删除模块 15

6.6登陆模块 17

7界面设计 20

7.1登陆界面 20

7.2学生信息添加界面 21

7.3学生成绩查询界面 22

7.4学生成绩修改界面 22

8系统测试 24

9结论 26

10参考文献 29

德州学院学生成绩管理系统的设计与实现

摘要:

学生成绩管理系统主要用于各类大学院校在教学这一部分的管理,是针对于教务处对课程、对学生、对学生成绩进行合理地安排以及统筹计划,以便让教务处以最短的工作时间内把学生的成绩核算出来,提高教务处的办事效率。

同时,能够随时对学生基本信息、学生成绩进行各种查询,以便及时很好地对需要了解的信息得到相应的反馈,能有效的帮助教务处的工作,可使学院教职工减轻工作压力,比较系统地对、教务教学上的各项服务和信息进行管理。

本系统是针对学生成绩管理进行设计的,主要用户为学校教务管理老师,但学生也可参与对自己信息的核对确认。

主要采用的开发工具是JAVA和MYSQL。

在开发过程中利用面向对象的程序思想和严格按照软件工程的开发过程来进行分析和设计。

本系统所要完成以下几个主要功能,其中有学生成绩管理、学生基本信息管理等等,实现对学生基本信息和成绩进行录入、修改、删除、查询等操作。

系统基本满足了学生成绩管理的功能需要,确实为学校对学生的管理提供了便利。

本系统界面友好、操作简单,对学生基本情况和成绩加快了查询速度、加强了管理,使各项管理更加规范化。

关键词:

模块化;数据库;数据库管理系统

1引言

1.1问题的提出

在我国,各大中小学校的各类信息管理系统并非一个新的课题。

大多数学校信息管理系统不完善,甚至有的学校根本就没有任何信息管理系统,所有的管理工作几乎都是靠手工完成。

特别是在西部贫困地区,学校的信息管理都依然靠手工操作,这十分落后,效率极低,成本很大,而且极易出错。

随着计算机技术不断地日新月异地发展,信息化是社会进程的必然趋势,学校的信息管理只有快,精,准,才能发挥其作用。

从人工操作改为计算机的自动化系统,人工操作必将被计算机代替。

1.2国内外研究的现状

信息技术的日益发展深入到社会的各个角落,学生宿舍管理也不例外,尤其作为高等院校的宿舍管理工作,是高校各项工作的一个重要组成部分,其管理水平的高低将直接影响到人才培养的质量。

随着高等教育的发展、高校规模的扩大、学生人数增加、学生宿舍各种信息的汇总、统计和分析等管理工作面临着诸多困难,管理工作也越来越繁重和琐碎。

因此宿舍管理的信息化、网络化越来越受到人们的重视,它既可以大大提高学生宿舍管理的绩效,也可以为学生解决后顾之忧。

同时随着计算机技术的普及和发展,管理的自动化已成为必然趋势。

因此,为了提高高校的整体管理水平,计算机在高等院校宿舍管理中的应用日益普及,这使得学生宿舍管理自动化的实现成为高校管理环节中的重要一环。

1.3目的与分析

本课题主要的目的是学生成绩管理系统,主要任务为建立学生信息管理系统,采用计算机对学生信息进行管理,进一步提高办学效益和现代化水平。

帮助广大教师提高工作效率,实现学生信息管理工作流程的系统化、规范化和自动化。

高校学生的成绩管理工作量大、繁杂,人工处理非常困难。

学生成绩管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。

学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。

2程序的主要功能

2.1添加功能

添加一个学生的基本信息,包括student_ID,student_Name,born_Date,math_Grade,English_Gradeo

3.2删除功能

能够对一个学生的信息进行删除按student_ID进行删除。

4.3显示功能

显示所有学生的主要信息包括studentID,studentName,bornDate,mathGrade,English_Gradeo

5.4查找功能

根据你键入的student_ID,显示其详细信息!

6.5修改功能

对学生的信息和成绩进行修改。

3程序运行平台

编程工具:

eclipse

编程语言:

JAVA

数据库:

MYSQL

具体操作如下:

具体操作如下:

新建SutGradeManage项目,然后再编写相应的java文件,再编译,链接,执行等,用户就可登录进该系统进行相应的操作。

4总体设计

#

图4.1系统总体框架图

5数据库设计

数据库设计是要在一个给定的应用环境(DBMS)中,通过合理的逻辑设计和有效的物理设计,构造较优的数据库模式、子模式,建立数据库和设计应用程序,满足用户的各种信息需求。

5.1数据库概念设计

在数据库设计中,先要对系统分析所得的数据字典中的数据存储进行分析,然后得出系统的关系模式,可以采用实体一一联系图(简称E——R图)的方法进行数据结构的描述。

E——R图由实体、属性、联系三部分组成。

图〈5.1.1>登录信息E-R图

7

图<5.1.2>学生信息E-R图

5.2表结构

表1dbo.users表

字段

类型

约束

默认值

说明

userName

VARCHAR2(20CHAR)

PK

用户名

userPwd

VARCHAR2(20CHAR)

notnull

密码

表2dbo.student表

字段

类型

约束

默认值

说明

student_ID

CHAR(10BYTE)

PK

学号

student_Name

VARCHAR2(20CHAR)

notnull

姓名

bom_Datemath_GradeEnglish_Grade

CHAR(11BYTE)CHAR(4CHAR)CHAR(4CHAR)

出生日期数学成绩英语成绩

5.3视图

表3dbo.vi视图

字段

类型

是否可空

insertable

updatable

deletable

说明

math_Grade

CHAR(4CHAR)

Yes

YES

YES

YES

数学成绩

English_Grade

CHAR(4CHAR)

Yes

YES

YES

YES

英语成绩

student_ID

CHAR(IO)

No

YES

YES

YES

学号

student_Name

VARCHAR2(80)

No

YES

YES

YES

姓名

bom_Date

CHAR(llBYTE)

Yes

Yes

Yes

Yes

出生日期

6模块分析

6.1添加模块

学生信息添加部分代码:

classcharuextendsJFrameimplementsActionListener{

JFrameframe=newJFrame("添加数据");

JPanelimagePanel;

ImageIconbg;

Buttonsure;

TextFieldinput1,input2,input3,input4,input5;

TextAreashow;

Boxbox1,box2,box3,box4;

intk,s1,j;

Connectioncon;

Statementsql;

ResultSetrs;

charu(){

Toolkitkit=Toolkit.getDefaultToolkit();

Imageimg=kit.getImage("tubiao.jpg");

frame.setIconImage(img);

input1=newTextField(10);

input2=newTextField(10);

input3=newTextField(10);

input4=newTextField(10);

input5=newTextField(10);

box2=Box.createVerticalBox();

box2.add(input1);

box2.add(Box.createVerticalStrut(8));

box2.add(input2);

box2.add(Box.createVerticalStrut(8));

box2.add(input3);

box2.add(Box.createVerticalStrut(8));

box2.add(input4);

box2.add(Box.createVerticalStrut(8));

box2.add(input5);

box1=Box.createVerticalBox();

box1.add(newLabel("学号:

"));

box1.add(Box.createVerticalStrut(8));

box1.add(newLabel("姓名:

"));

box1.add(Box.createVerticalStrut(8));

box1.add(newLabel("生日:

"));

box1.add(Box.createVerticalStrut(8));

box1.add(newLabel("数学:

"));

box1.add(Box.createVerticalStrut(8));

box1.add(newLabel("英语:

"));

box3=Box.createHorizontalBox();

box3.add(box1);

box3.add(Box.createHorizontalStrut

(1));

box3.add(box2);

show=newTextArea(6,43);

sure=newButton("确定");

box4=Box.createHorizontalBox();

Labellabel1=newLabel("请输入数据");

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

label1.setForeground(Color.blue);

box4.add(label1);

box4.add(Box.createHorizontalStrut

(1));

box4.add(sure);

sure.addActionListener(this);

bg=newImageIcon("cru.jpg");

JLabellabel=newJLabel(bg);

label.setBounds(0,0,bg.getIconWidth(),bg.getIconHeight());

imagePanel=(JPanel)frame.getContentPane();

imagePanel.setOpaque(false);

imagePanel.setLayout(newFlowLayout());

show.setEditable(false);

imagePanel.add(box4,BorderLayout.NORTH);

imagePanel.add(box3,BorderLayout.CENTER);

imagePanel.add(show,BorderLayout.SOUTH);

frame.getLayeredPane().setLayout(null);

frame.getLayeredPane().add(label,newInteger(Integer.MIN_VALUE));

//frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(bg.getIconWidth(),bg.getIconHeight());

frame.setBounds(700,200,540,440);

frame.setResizable(false);

frame.setVisible(true);

validate();

addWindowListener(newWindowAdapter(){

publicvoidwindowClosing(WindowEvente){

dispose();

}

});

}

publicvoidactionPerformed(ActionEventee){

Strings1,s2,s3,s4,s5,insert1,recode,name,date,number;

intm1,m2,math,english;

s1=input1.getText();

s2=input2.getText();

s3=input3.getText();

s4=input4.getText();

s5=input5.getText();

number=s1;

name=s2;

date=s3;

m1=Integer.parseInt(s4);

math=m1;

m2=Integer.parseInt(s5);

english=m2;

try{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}catch(ClassNotFoundExceptioneee){

System.out.println(""+eee);

}

try{

con=DriverManager.getConnection("jdbc:

odbc:

sun","gxy","123");

sql=con.createStatement();

recode="("+"'"+number+"'"+","+"'"+name+"'"+","

+"'"+date+"'"+","+math+","+english+")";

insert1="INSERTINTOchengjibiaoVALUES"+recode;

sql.executeUpdate(insert1);

show.setText("你插入了:

");

show.append("学号:

"+number+"姓名:

"+name+"出生:

"+date

+"数学"+math+"英语"+english);

show.append("\n");

}catch(SQLExceptione){

System.out.println(e);

JOptionPane.showMessageDialog(this,"你输入的学号已存在,请核对重新

输入!

");

}

}

}6.2显示模块

显示模块将输出所有学生的主要信息;

主要代码为:

classchuangkouextendsJFrameimplementsActionListener{

JFrameframe=newJFrame("选择窗口");

JPanelimagePanel;

ImageIconbg;

Buttonbutton1,button2,button3,button4,button5,button6;

Boxbox;

Labellabel;

Panelp1;

chuangkou(){

Toolkitkit=Toolkit.getDefaultToolkit();

Imageimg=kit.getImage("tubiao.jpg");

frame.setIconImage(img);

p1=newPanel();

label=newLabel("欢迎使用成绩管理系统",Label.CENTER);

label.setFont(newFont("隶书",Font.BOLD,30));

label.setBackground(Color.green);

p1.add(label);

button1=newButton("添加");

button2=newButton("删除");

button3=newButton("修改");

button4=newButton("查询");

button5=newButton("返回");

button6=newButton("退出");

box=Box.createHorizontalBox();

box.add(button1);

box.add(Box.createHorizontalStrut(8));

box.add(button2);

box.add(Box.createHorizontalStrut(8));

box.add(button3);

box.add(Box.createHorizontalStrut(8));

box.add(button4);

box.add(Box.createHorizontalStrut(8));

box.add(button5);

box.add(Box.createHorizontalStrut(8));

box.add(button6);

button1.addActionListener(this);

button2.addActionListener(this);

button3.addActionListener(this);

button4.addActionListener(this);

button5.addActionListener(this);

button6.addActionListener(this);

addWindowListener(newWindowAdapter(){

publicvoidwindowClosing(WindowEvente){

dispose();

}

});

bg=newImageIcon("ckou.jpg");

JLabellabel=newJLabel(bg);

label.setBounds(0,0,bg.getIconWidth(),bg.getIconHeight());

imagePanel=(JPanel)frame.getContentPane();

imagePanel.setOpaque(false);

imagePanel.setLayout(newFlowLayout());

imagePanel.add(p1,BorderLayout.NORTH);

imagePanel.add(box,BorderLayout.CENTER);

frame.getLayeredPane().setLayout(null);

frame.getLayeredPane().add(label,newInteger(Integer.MIN_VALUE));

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭后状

frame.setSize(bg.getIconWidth(),bg.getIconHeight());

frame.setBounds(200,200,500,300);

frame.setResizable(false);//设置窗口大小不可改变

frame.setVisible(true);

validate();

}

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==button6){

System.exit(0);

}

if(e.getSource()==button1){

newcharu();

}

if(e.getSource()==button2){

newshanchu();

}

if(e.getSource()==button3){

newxiugai();

}

if(e.getSource()==button4){

newchaxun();

}

if(e.getSource()==button5){

newdenglu();

frame.dispose();

}else{

}

}

}

6.3修改模块

首先由用户输入要修改的学生的成绩

主要代码:

classxiugaiextendsJFrameimplementsActionListener{

JFrameframe=newJFrame("修改成绩");

JPanelimagePanel;

ImageIconbg;

Buttonxiug;

TextFieldinput1,input2,input3;

TextAreashow;

Boxbox1,box2,box3;

Panelp1,p2;

intk,s1,j;

Connectioncon;

Statementsql;

intsum=0;

ResultSetrs;

xiugai(){

Toolkitkit=Toolkit.getDefaultToolkit



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有