JAVA学生成绩管理与实现整理.docx

上传人:b****8 文档编号:10279115 上传时间:2023-02-09 格式:DOCX 页数:19 大小:22.73KB
下载 相关 举报
JAVA学生成绩管理与实现整理.docx_第1页
第1页 / 共19页
JAVA学生成绩管理与实现整理.docx_第2页
第2页 / 共19页
JAVA学生成绩管理与实现整理.docx_第3页
第3页 / 共19页
JAVA学生成绩管理与实现整理.docx_第4页
第4页 / 共19页
JAVA学生成绩管理与实现整理.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

JAVA学生成绩管理与实现整理.docx

《JAVA学生成绩管理与实现整理.docx》由会员分享,可在线阅读,更多相关《JAVA学生成绩管理与实现整理.docx(19页珍藏版)》请在冰豆网上搜索。

JAVA学生成绩管理与实现整理.docx

JAVA学生成绩管理与实现整理

基于JAVA的学生成绩管理系统的设计与实现.txt爱情是艺术,结婚是技术,离婚是算术。

这年头女孩们都在争做小“腰”精,谁还稀罕小“腹”婆呀?

高职不如高薪,高薪不如高寿,高寿不如高兴。

基于JAVA的学生成绩管理系统的设计与实现【毕业论文】【毕业设计】

基于JAVA的学生成绩管理系统的设计与实现

THEDESIGNANDREALIZATIONOFTHERESULTOFSTUDENTADMINISTRATIONMANAGEMENTSYSTEMONTHEJAVA

学生姓名:

学号:

年级专业:

指导老师:

学院:

提交日期:

2009年11月

摘要2

前言4

1需求分析4

1.1功能需求分析4

1.2性能需求分析5

1.3数据库需求分析――数据流图5

1.4数据结构分析――数据流图6

2概要结构设计9

2.1系统功能结构设计9

2.2数据库概念结构设计10

3逻辑结构设计10

4详细设计及功能实现11

4.1模块设计与实现11

5总结21

参考文献21

致谢21

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

作者:

周亚平

指导老师:

陈义明

(湖南农业大学科学技术师范学院2004级计算机科学与技术专业教育班,长沙410128)

摘要:

随着计算机技术的飞速发展和高等教育体制改革的不断深入,传统教育管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成教案管理工作。

提高教案管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。

基于Java与SQLserver数据库技术建立一个高校成绩管理系统该系统为管理员、学生和教师提供了查询、修改、增加记录、删除等功能,功能比较落齐全,基本上能满足学生和老师的要求。

关键词:

Java;需求分析;概要设计;学生成绩管理系统;

TheDesignAndRealizationOftheeducationaladministrationmanagementsystemBasedOnJAVA

Author:

Zhouyapping

Tutor:

Chenyiming

(SchoolofInformationSciencetechniquenormalschool,HunanAgriculturalUniversity,Changsha,410128)

Abstract:

Flytechnicallyalongwiththecalculatortodevelopsoonandthehighereducationsystemreformofcontinuouslythorough,traditionaleducationmanagementthemethod,meansandworkefficiencieshavealreadycan'tadaptthenewdevelopmentdemand,can'tcompletetheteachingmanagementworknicely.Themainpaththatraisestheeducationaladministrationmanagementlevelisathoughtthatrenewsthegovernor,strengthenningthescienceunderstandingtomanagetheactivity.AccordingtotheJAVAbuildupthatsystemofaneducationaladministrationofhighschoolmanagementsystem'spursuestudieswiththedatabasetechniquetolivingtoprovidedthesearch,modify,save,increasetherecordandselectelectivecoursesetc.withteacherfunction,thefunctionrelativelyfallswell-found,cansatisfytherequestbetweenstudentandteacherbasically.

Keyword:

JAVA。

Theneedanalysis。

Theessentiadesign。

Database。

Detaileddesign

前言

学生成绩管理工作是高校教育工作的一项重要内容。

教务管理工作是指学校管理人员按照一定教育方针,运用先进的管理手段,组织、协调、指挥并指导各用户活动,以便高效率、高质量地完成各项教案任务,完成国家所制定的教育目标。

学生成绩管理工作是学校教案工作的中枢,是保证高校教案机制正常运转的枢纽,它是一工程的性、计划性、适用性、创造性和科学性很强的工作。

学生成绩工作关系到高校教案秩序的稳定。

随着计算机技术的飞速发展和高等教育体制改革的不断深入,传统教育管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成教案管理工作。

提高教务管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。

同时,运用先进的信息技术,开发高校综合成绩管理信息系统,是深化教务体制改革的有利措施。

JAVA以GUI的编程方式、面向对象的程序设计、众多的GUI组件和强大的数据库应用开发支持,在竞争激励的开发工具市场中越来越羸得程序设计者的青睐。

JAVA是Windows系统下的可视化集成开发工具,提供了强大的可视化组件功能,使程序员能够快速、高效地开发出Windows系统下的应用程序,特别是在数据库和网络方面,JAVA与其它开发工具相比更是胜出一筹。

可视化主要是指开发图形用户界面,而只需调用GUI组件即可。

1需求分析

1.1功能需求分析

该学生成绩管理系统具备三方面的功能:

一方面是学生用户,学生通过输入学号和密码进下该系统后,可以进行一些基础查询(学生信息查询、班级信息查询、课程信息查询)、成绩管理(成绩查询、计算平均分)重新登陆系统;一方面老师进入该系统则比学生多一些权限:

成绩输入、成绩查询。

具体功能的详细描述如下

1.1.1选择[学生基本维护]菜单命令,即可进入[学生基本维护]功能窗体,在其中输入学生的相关信息,如果需要添加或修改学生信息,则单击相应的按纽,输入新信息后单击[添加]就可以了。

需要删除一条信息,则只要选择这条信息再点击[删除]。

在搜索条件中输入相关的条件,单击[查询]就可查找信息。

1.1.2选择[学生信息查询]菜单命令,即可进入[学生信息查询]功能窗体,在其中的下拉列表中选择你要看的信息,则在下面的表格中显示你要的信息。

1.1.3选择[成绩管理][添加成绩]菜单命令,即可进入[添加成绩]功能窗体,此功能权限只有管理员和教师。

1.1.4选择[成绩管理][输入成绩]菜单命令,即可进入[输入成绩]功能窗体,

此功能权限只有管理员和教师。

1.1.5选择[成绩管理][修改成绩]界面,此功能规管理员所有。

1.1.6选择[成绩管理][查询成绩]界面此界面对学生也是可见的,它的权限规所有用户所有。

1.1.7选择[登陆][重新登陆]则会返回登陆界面,为用户提供方便。

1.1.8选择[退出]将退出整个系统。

1.2性能需求分析

时间特性要求:

在软件方面,响应时间有点慢,因为是用JBuilder做的,它占用内存比较大,更新处理时间比较快而且迅速。

安全性:

设立口令号和密码验证方式,防止非法用户登录进行操作。

也就是用户只有管理员、学生和教师才能进入这个系统,用户凭口令号和密码进入此系统,系统会自动判断用户是那种类型,分别拥有不同的权限。

1.3数据库需求分析――数据流图

在教务系统中功能模块主要牵涉到的信息包括:

是学生信息(base_info)、班级信息(class_info)、课程信息(class_info)、成绩表(chengjibiao)、选课表(xuankebiao)、登陆表(stu)。

学生信息:

包含学号(id)、姓名(name)、班级(class)、性别(sex)、地址(address)

课程信息:

包括课程编号(course_id)、课程名称(coursename)、教师(teacher)

选课表:

编号(select_id)课程名称(coursename)、课程编号(course_id)、学号(xh)、

姓名(name)、成绩(result)、教师(teacher)

成绩表:

编号(number)、学号(id)、课程名称(coursename)、成绩(result)、教师(teacher)

班级信息:

班级编号(bjbh)、学号(id)、姓名(name)班级名称(bjmc)、班主任(bzr)。

登陆表:

口令号(id)、密码(password)、权限(rightlimit)。

根据以上划分的具体数据信息,得到数据流图如1.1所示:

1.1数据库需求分析——数据流图

1.4数据结构分析——数据流图

1.4.1数据结构:

学生信息={组成:

{学号(id)、姓名(name)、班级(class)、性别(sex)、地址(address)}}

课程信息={组成:

{编号(course_id)、课程名称(coursename)、教师(teacher)}}

选课信息={组成:

{编号(select_id)课程名称(coursename)、课程编号(course_id)、学号(xh)、姓名(name)、成绩(result)、教师(teacher)}}

成绩表包括={组成:

编号(number)、学号(id)、课程名称(coursename)、成绩(result)、教师(teacher)}}

课程信息包括={组成:

课程编号(course_id)、课程名称(coursename)、教师(teacher)}}

班级信息={组成:

班级编号(bjbh)、年级(nj)、班级名称(bjmc)、人数(rs)、班主任(bzr)}}

登陆表={组成:

口令号(id)、密码(password)、权限(rightlimit)}

1.4.2数据流:

1.4.2.1对图1.1中所涉及的数据流描述如下:

1)数据流名:

口令号

说明:

根据这个口令号定位到用户管理数据库,以便进行身份验证。

数据流来源:

登陆界面输入的口令号和密码。

数据流去向:

其中用户口令信息将存在于整个操作过程中,防止非法登陆。

数据流组成:

口令号(文本);密码(文本)

2)数据流名:

寻找信息

说明:

根据用户在学生信息维护的时候所填写的信息。

数据流来源:

学生信息维护界面学生输入包含学号、班级编号、名称等。

数据流去向:

学号将存在整个操作,其它的存入数据库。

数据流组成:

学号(文本);姓名(文本)等

3)数据流名:

寻找信息

说明:

根据用户在成绩管理的时候所填写的信息。

数据流来源:

成绩输入、修改、添加等界面用户输入包含课程编号、课程名称、成绩、教师。

数据流去向:

学号、班级编号、课程编号将存在整个操作,其它的存入数据库。

数据流组成:

课程编号(文本)、课程名称(文本)、教师(文本)等。

4)数据流名:

返回信息

说明:

根据用户在学生信息维护的时候所填写的信息存入了数据库之后。

数据流来源:

由学生信息维护界面学生输入的包含学号、姓名、性别等存入数据库的。

数据流去向:

学生信息维护界面。

数据流组成:

学号(文本)、姓名(文本)、班级名称(文本)、性别(文本)等。

5)数据流名:

返回信息

说明:

根据用户在成绩管理的时候所填写的信息存入数据库后。

数据流来源:

由成绩管理输入的包含班级名称、教师、课程名、成绩存入数据库的。

数据流去向:

成绩管理的各子界面。

数据流组成:

班级编号(文本);班级名称(文本);教师(文本)等;

1.4.2.2对图1.1中所涉及的处理过程描述如下:

1)处理过程名:

登陆

输入数据流:

口令号、密码

输出数据流:

不符合输入条件的错误信息

处理过程逻辑:

用IF条件进行判断。

2)处理过程名:

班级信息维护

输入数据流:

班级编号、班级名称、教师等

输出数据流:

班级编号、班级名称等,其中班级编号将存在整个操作。

处理过程号:

班级编号,其中班级编号将存在整个操作。

3)处理过程名:

学生信息维护

输入数据流:

学号、姓名、班级编号、性别等。

输出数据流:

学号、姓名、班级编号、性别等。

其中学号将存在整个操作。

4)处理过程名:

课程查询

输入数据流:

学号、姓名

输出数据流:

学号、班级名称、课程名称、上课时间节、上课时间天、上课地点、其中课程编号将存在整个操作。

5)处理过程名:

成绩输入

输入数据流:

课程编号、课程名称

输出数据流:

编号、学号、课程名称、成绩、其中编号和学号将存在整个操作。

2概要结构设计

2.1系统功能结构设计

2.1.1模块的功能设计

根据需求分析阶段得到的功能需求,管理员、学生和教师用户通过输入口令号和密码进下该系统后,可以进行一些学生基础信息查询(学生信息查询、班级信息查询、课程信息查询)、学生信息维护、成绩管理(成绩查询、计算平均分)重新登陆系统、退出。

模块功能大概可以分为如下4个方面:

这几个模块学生基础维护、成绩管理、登陆、退出。

其中基础维护还要包括学生信息维护、班级信息维护、课程信息维护。

成绩管理包括成绩查询、添加成绩、成绩输入等。

综上所述,得到客户端功能模块图如下2.1所示。

2.2数据库概念结构设计

根据需求分析阶段得到的数据字典以及数据流图,由以上分析可以得到系统中出现的实体有:

学生信息实体、课程信息实体、班级信息实体、成绩表实体等等。

可以画出对应的E-R图如下:

得到总E-R图2.2如下:

m1

n1

111

n

1n

3逻辑结构设计

根据上面概念结构设计阶段得到的E-R图,下一步应该将它转化为关系模型。

可以得到对应的关系模式为:

Base_info(id、name、class、sex、address)

Class_info(class_id、classname、teacher、id)

xuankebiao(number、id、coursenameteacher、class_id、classname、result)

chengjibiao(number、id、name、course、result)

course_info(number、course-id、coursenamedates、teacher、jieshu、address)

stu(id、password、rights)

4详细设计及功能实现

4.1用户登录模块设计与实现

设计思路:

为了检验登录用户是否是一个合法用户,当用户输入用户名和密码后,需要查询数据库以便验证该用户是否为非法用户。

同时通过用户输入的口令号就可知道用户是管理员、学生,还是教师,他们的权限不同。

实现功能:

用户可以从登陆界面进入到教务管理系统界面,然后进行一些操作。

图4.1为系统运行时的截图:

该模块的核心代码如下:

判断用户是否合法和用户权限。

publicvoidjButton1_actionPerformed(ActionEvente){

Stringusername=Name_Text.getText().trim()。

Stringpassword=Password_Text.getText().trim()。

if(username.equals("")||password.equals(""))

{

JOptionPane.showMessageDialog(null,"用户名或密码不能为空!

")。

}else{

try{

//建立数据库连接对象

Jdbcconnconn=newJdbcconn()。

//连接数据库

conn.OpenConn("student","sa","yaya")。

StringstrSQL="select*fromstuwhereid='"+username+"'"。

try{

//得到记录;

ResultSetrs=conn.getResults(strSQL)。

rs.first()。

StringPassWord=rs.getString("password").toString().trim()。

//得到数据库中对应用户名的密码

intright=rs.getInt("rightlimit")。

rs.close()。

if(password.equals(PassWord)){

JOptionPane.showMessageDialog(null,"成功登陆!

")。

dispose()。

chaxunchengjicxcj=newchaxunchengji()。

cxcj.username=username。

Main_FramemainFrame=newMain_Frame()。

mainFrame.users=username。

mainFrame.setVisible(true)。

DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize()。

DimensionframeSize=mainFrame.getSize()。

if(frameSize.height>screenSize.height){

frameSize.height=screenSize.height。

}

if(frameSize.width>screenSize.width){

frameSize.width=screenSize.width。

}

mainFrame.setLocation((screenSize.width-frameSize.width)/2,

(screenSize.height-frameSize.height)/2)。

mainFrame.users=username。

switch(right)

{

case0:

mainFrame.jMenuItem4.setVisible(false)。

mainFrame.jMenuItem6.setVisible(false)。

mainFrame.jMenuItem1.setVisible(false)。

mainFrame.jMenuItem3.setVisible(false)。

break。

case1:

mainFrame.jMenuItem3.setVisible(false)。

mainFrame.jMenuItem6.setVisible(false)。

break。

default:

mainFrame.setTitle("学生成绩管理系统")。

break。

}

}

else{

JOptionPane.showMessageDialog(null,"密码错误,请重输!

")。

Password_Text.setText("")。

}

}

catch(Exceptionex){

JOptionPane.showMessageDialog(null,"用户名或密码错误1!

")。

Name_Text.setText("")。

Password_Text.setText("")。

}

conn.closeConn()。

//关闭数据库连接

}catch(Exceptionex){

JOptionPane.showMessageDialog(null,"用户名或密码错误2!

")。

System.out.print(ex.getMessage())。

}//firsttrycatch

}//secondtrycatch

}//endelse

}//endmethod

该模块的核心代码:

publicstaticvoidmain(String[]args){

banjixinxibanjixinxi=newbanjixinxi()。

}

publicvoidjComboBox1_actionPerformed(ActionEvente){

intstate=jComboBox1.getSelectedIndex()。

if(state==1){

try{

Stringsql="select*frombase_info"。

queryDataSet1.close()。

//将SQL语句传给queryDataSet1执行。

queryDataSet1.setQuery(newQueryDescriptor(database1,sql,null,true,

Load.ALL))。

queryDataSet1.open()。

//将queryDataSet1打开

queryDataSet1.refresh()。

//刷新queryDataSet1

}//endtry

catch(Exceptionex){

JOptionPane.showMessageDialog(null,"Sorry!

暂时没有学生信息记录")。

}//endcatch

}//endif

else{

if(state==2){

try{

Stringsql1="select*fromclass_info"。

queryDataSet1.close()。

//将SQL语句传给queryDataSet1执行。

queryDataSet1.setQuery(newQueryDescriptor(database1,sql1,null,true,

Load.ALL))。

queryDataSet1.open()。

//将queryDataSet1打开

queryDataSet1.refresh()。

//刷新queryDataSet1

}//endtry

catch(Exceptionex){

JOptionPane.showMessageDialog(null,"Sorry!

暂时没有班级信息记录")。

}//endcatch

}//endifofelse

else

{try{

Stringsql2="select*fromxuankebiao"。

queryDataSet1.close()。

//将SQL语句传给queryDataSet1执行。

queryDataSet1.setQuery(newQueryDescriptor(database1,sql2,null,true,Load.ALL)

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

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

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

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