java课设学生成绩管理系统_第1页
java课设学生成绩管理系统_第2页
java课设学生成绩管理系统_第3页
java课设学生成绩管理系统_第4页
java课设学生成绩管理系统_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、课程设计说明书N0.4学生成绩管理系统1 .课程设计的目的由于高等学校的快速发展,高校规模越来越大,学生数量与课程数量都在迅速地增 长,管理上的手工操作不仅仅会耗费学生与工作人员大量的时间和精力,效率以及准确 性也很低。如何使同学们方便,快捷、准确地选课,已经成为一个重要的问题。利用计算机进行学生选课方面的管理,不仅能够保证准确、无误、快速输出,而且 还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、 保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、 修改等功能的管理系统是十分重要的。2设计方案论证2.1 设计思路根据对系统进行的需求分析

2、,本系统将分为4个模块:分别是学生管理模块、课程 管理模块、成绩管理模块、信息查询模块。实现的功能有:增加学生信息系统操作人员打开学生信息增加界面,输入相关信息、,在数据库中添加相关数据。(2)修改学生信息根据学生学号查询出该学生的相关信息、,修改相关条目后保存在数据库中。删除学生信息根据学生学号查询出该学生的相关信息,确定删除后,在数据库中删除该信息、。(4)学生选课选择学生学号与需要选择的课程,确认无误后保存,数据库中将自动添加新的选课 记录。增加课程信息系统操作人员根据打开课程信息增加界面,输入相关信息,在数据库中添加相关数 据。修改课程信息根据课程号查询出课程的相关信息,修改相关条目后

3、保存在数据库中。删除课程信息根据课程号查询出该课程的相关信息、,确定删除后,在数据库中删除该信息。(8)登记成绩根据学号,以及该学生所选择的课程,进行成绩登记,未选课的学生无法进行登记。(9)修改成绩对登记的成绩信息进行修改。(10)学生查询可以根据学生学号、学生姓名、学生性别、学生所学专业、学生所属学院、来对学 生信息进行查询,所有符合查询条件的学生信息都将会被显示出来。(11)课程查询可以按照课程名称,授课教师的姓名,对课程的详细信息进行查询,所有符合查询 条件的课程信息都将会被显示出来。(12)成绩查询根据学生的学号来查询该学生所有课程的成绩。2.2 数据库设计数据库中应包含3个表,即课

4、程信息表(Course)、学生信息表(Student)、和学生选课 表(SC)。设计表如表1,表2,表3所示。表1课程信息表(Course)名称字段名称数据类型主键非空课程编号CnumChar(4)YesYes课程名称CnamcV archar2NoYes授课教师CtcachcrVarchar2NoNo上课地点CplaccV archar2NoNo课程类别CvypcChar(l)NoNo表2学生信息表(Student)名称字段名称数据类型主键非空学号SnumChar(10)YesYes学生姓名SnamcV archar2NoYes性别SscxChar(2)NoNo民族ScthnicChar(2

5、)NoNo籍贯ShomcV archar2NoNo入学年份Svcar JChar(4)NoNo专业SmajorV archar2NoNo学院ScollcgcV archar2NoNo出生日期SbirthChar(8)NoNo表3学生选课表(S©名称字段名称数据类型主键非空学号SnumChar(10)YesYes课程编号CnumChar(4)YesYes成绩GradeNumbcr(4,l)NoNo2.3设计方法学生管理系统主界面模块学生管理系统主界面模块包括SmMS.java和SinMainjava两个文件。SiuMS是学生管课程设计说明书N6理系统的主运行类,其中有运行整个程序的ma

6、in方法,该文件生成了 StuMain类的一个 实例,从而生成了学生管理系统的界面。SiuMain类继承自JFramc类,实现了事件侦听 的接口,它有一个不带参数的构造方法StuMain。,用来生成StuMain的实例。StuMain类 将所有的功能集中到菜单栏中,并通过调用其他模块来实现学生管理系统的各个功能。 学生信息管理模块学生信息管理模块主要 由 Siulnfo.java、AddStulnfo.java、EditStulnfo.java、 DclStuInfb.java> SclcctCoursc.java 和 StuInfoScarchSnum.java 共 6 个文件组成。S

7、tulnfb 是 AddSmlnEditStulnfo、DclStulnfc 这 3 个类的超类,由于 AddSlulnfo、EdiiStuInfo 和 DclStulnfc的界面显示有共同之处,所以编写包含共有界面的Stulnfc类,可以快速实现 其3个子类的界面显示。它们之间的构成关系如图1所示。这6个类文件组成了主界面 中“学生管理”菜单的内容,其中包括增加、修改、删除和学生选课功能。图1学生信息管理功能结构图其中StuInfoScarchSnum类是选择学号的类,该类利用gctSnum。方法将选择出的学 号返回给调用它的类。调用它的类包括EditSmlnfo类和DclSuilnfo类。

8、课程信息管理模块课程信息管理模块主要由 Coursclnfo.java AddCourselnfb.java% EditCourselnfo.javaxDclCoursclnfo.java CoursclnfoScarchCnum.java 这 5 个文件组成,它们组成了主界面中“课程管理”菜单的内容,其中包括增加、修改和删除功能。Ccursclnf。是AddCourscInfc、 EditCourselnfox DelCourscLnfb 这 3 个类的超类,由于 AddCoursdnfox EditCourselnfo 和 DclCoursclnfc的界面显示有共同之处,所以编写包含共有的

9、Coursclnf。类,可以快速实 现其3个类的界面显示。它们之间的构成关系如图2所示。图2课程信息管理功能结构图CoursdnfoScarchCnum类是选择课程号的类,该类利用gctCnumO方法将选择出的学 号返回给调用它的类。调用它的类包括EditCoursclnfo类和DclCoursdnfo类。(4)成绩信息管理系统成绩信息管理模块主要由 GradcInfo.javaN AddGradcInfo.java% EdilGradcInfo.java 这 3 个文件组成,这3个文件组成了主界面中“成绩管理”菜单的内容,其中包括增加和修 改功能。GmdcInfo 类是 AddGradcIn

10、fo EditGradcInfb 这两个类的超类,由于 AddGradcInfo 和EdiiGradclnfo的界面显示有共同之处,所以编写包含共有界面的Gradclnf。类,可以 快速实现其两个子类的界面显示。3个文件构成的关系如图3所示。图3成绩信息管理功能结构图信息查询模块课程设计说明书N0.1信息查询模块主要包括学生查询、课程查询和成绩查询3个部分。学生查询由 StuScarchSnum.java、StuScarchSnamc.java、 StuScarchSscx.java、SvuScarchScollcgc.java、 StuScarchSmajor.java和RcsullStud

11、cnt.java这6个文件组成,包括:按照学号查询、按照学 生姓名查询、按照性别查询、按照学院查询与按照专业查询。StuScarchSnum.java类是按 照学学号查询学生信息的类,支持学号在一定范围内搜索。操作者只需输入需要查询的 学号范围,系统会将范围内的信息显示在屏幕上。SluScarchSnamc.java类是按照学生姓 名查询学生信息的类,支持根据学生姓名进行搜索。操作者输入需要查询的学生姓名, 系统会将符合条件的信息显示在屏幕上。同时,如果操作者不输入任何信息,系统将会 搜索出所有的学生信息。StuScarchSscx.java 类、StuScarchScollcgc.java

12、类、 StuScarchSmajor.java 类和 Resultstudent.java 类的实现功能与 SluScarchSnamc.java 类功能相 似。数据库操作模块Databasc.java类是对数据库进行操作的类,包括:连接数据库、执行SQL语句、关 闭数据库连接等;StuBcan.java类是用语对学生相关信息进行数据库操作的类,包括:学 生信息的增加、修改、删除、查询等;CrsBcanjava类似乎用于对课程相关信息进行数据 库操作的类,包括:课程信息的增加、修改、删除、查询等;esBeanjava类是用语对选 课信息及成绩的相关信息进行数据库操作的类,包括:选课信息的、修改

13、、查询,以 及成绩的登记、修改、查询等。3 .设计结果与分析学生管理系统的主界面,如图4所示。图4主界面添加学生信息界面,如图5所示。图5添加学生信息界面若要修改学生信息,先单击“学号查询”选择要修改的学生学号,点击确定后,对所 显示的学生信息进行修改。运行界面如图6所示。课程设计说明书N10图6修改学生信息界面(4)选择“学号”和所要选择的“课程”进行学生选课操作,运行界面如图7所示。图7学生选课界面添加课程信息,运行效果如图8所示。图8添加课程界面若要修改课程信息,单击“查询”按钮,选择所要修改课程的课程编号,之后该信息 会自动显示出来,此时可进行信息的修改,运行效果如图9所示。图9修改课

14、程信息界面若要添加成绩信息,下拉列表中选择学号,课程名称,之后对该同学的成绩进行录入, 运行效果如图10所示。图10添加成绩界面(8)信息查询包括学生查询、课程查询、成绩查询。若按学号查询,则弹出输入学号的界面,如图11所示。单击“确定”后,则显示所要查询的信息结果。如图12所示。课程设计说明书Noao图11按学号索引界面图12学生信息查询结果界面4 .设计体会通过这次课程设计,使我对JAVA这门课又做了一次系统的复习,对各个知识点也 都有了更深刻的理解,让我掌握的更扎实,同时也增强了实际操作能力,了解了学生信 息管理系统的工作流程以及工作模式,程序开发过程中涉及到了数据库的相关知识,使 我对

15、数据库的使用也更加的熟练,另一方面也对编程语言有了新的认识,为以后的学习 打下了基础。在本系统的开发过程中,在知识、经验方面都存在着不足。另外,在整个开发的过 程中,时间也比较仓促不能对学生信息管理系统的整个流程完全熟悉,在需求分析时未 能做到完全满足用户的需求。5 .参考文献口丁振凡Java语言实用教程M.北京:北京邮电大学出版社,2005.2: 105-1212宛延闿.实用Java程序设计教程M.北京:机械工业出版社,2006.4: 234-2503张广彬,孟红蕊,张永宝Java课程设计案例精编M.北京:清华大学出版社,2005.2: 355-363 4朱喜福Java程序设计M.北京:人民

16、邮电出版社,2005.9: 179-203附录(l)SluMS.javaimport javax.swing.U1 Manager;import java.awt.*;public class StuMS boolean packFramc = false;public StuMSQ StuMain frame = new StiiMainQ;if (packFramc) frame, pack。; else framc.validatcO; 设置运行时窗口的位置Dimension scrccnSizc = T<x)lkit.getDcfaultT(x>lkit0.gctScrcc

17、nSizcO;Dimension frameSize = framc.gctSizcQ;if (framcSizc.hcight > scruunSizu.hu砂t) framcSizc.hcight = scruunSizu.hu 砂 t;if (framcSizc.width > scrccnSizc.width) framcSizc.width = scruunSizu. width;framc.sctLocati()n(scrccnSizc.wdth - framcSizc.width) / 2, (scrcciiSizc.hcight - framcSizc.hcight

18、) /2);Framc.sctVisiblc(truc);public static void main(Stringfl args) 设置运行风格try 课程设计说明书N0A14UMana:r.sctL()()kAndFccl(UMjuia:r.grtSstcmL<)<)kAndFcclClassNamc0); catch (Exception c)c. p rin tS tackT race 0;new StuMSQ;(2)AddSiuInfc).javaimport java.awt.cvent*;import java.awt.*;import javax.swing.*;

19、public class AddStulnfo extends Siulnfi) StuBuan getSnum = new SiuBuan。;public AddStuInf()O this.setTiM惨加学生信息this.sctRcsizable(fiilsc);sNum.se tEditablc(falsc);sNum.sciTcxl(MH+getSnum.getStuldO);sNamc.sctEditablc(truc);sScx.sctEditablc(truc);sScthnic.sctEditablc(truc);sBirth.sclEditablc(truc);sYcar.

20、sctEditablc(truc);sMajor.sctEditablc(tn,ic);sCollcgc.sctEditablc(tnic);sH(>mc.sctE<Jitablc(truc);设置运行时窗口的住直Dimension scrccnSizc = T<)olkit.gctDcfaukT(x>lkitQ.grtScrccnSizc();this.sctLocation(scrccnSizc.wdih - 400) / 2,(scrccnSizc.hcight - 300) / 2 + 45);public void donilnitQadding). sutT

21、uxt,'增加”);addInfc).sctFont(new Font("Dialog”,OJ 2);d( >wnPicl.add(addl nf();ckarInfo.sutTuxt("清空) clcarInfo.sctF()nt(ncw F()nt(nr)ialogOJ 2);downPanel.add(clearInfb);uixdnfo.sutTuxt("退出");cixilnf(>.sctF()nt(nrT Font("Dialog”,0,12);d()wnPicl.add(cixtInf(>);添加事件侦听

22、addlnf().addActi()nListcncr(this);clearlnfb.addActionListcner(this);cixtlnf(>.addAcri()nListcncr(this);tfiis.contentPane.add(downPanelJBordcrLayoutSOUTH);public void acti()nPcrf()rmcd(Acti(>nEvciit c) Object obj = c.getSourccQ;if (obj = eixtlnfo) /退出this.disposeQ;else if (obj = addinfo) /增力口sN

23、um.sctEnablcd(falsc);sNamc.sctEnablcd(falsc);sScx.sctEnablcd(falsc);sScthnic.sci:Enablcd(falsc);sBirth.setEnabled(false);sYcar.sclEnablcd(falsc);课程设计说明书N0A16sMajor.sclEnablcd(falsc);sColler.sctEnablcd(falsc);sHomc.sctEnablcd(falsc);addlnfo.sctEnablcd(falsc);clcarnfo.sctEnablcd(falsc);cixtlnfo.sctEna

24、blcd(falsc);StuBcaii addStu = new StuBuan。;sHomc.gctTcxtQ,addStu.stuAdd(sNamc.gctTcxtO,sScx.gr lTcxt(),sBirth.getTcxtQ,sScthnic.griTcxtO, sYcar.getTcxtQ, sMajor.gclTcxtO, sCollcgc.gctTcxtO);this.disposcQ;AddStulnfo asi = new AddStuInf(>();asi.dowiiliiitQ;asi.packQ;asi.sutVisiblu(tny);else if (obj

25、 = clearinfo) /清空sctNullO;sNum.sctTcxt(MO+gctSnum.gctStTidO);(3)EditStuInf().javamport java.awt.*;import java.sql.*;import java.awt.crcnt.*;import javax.swing*;public class EditSmlnf()extends Stulnfo String sNum_str ="";public EditStuInfoQ this.sutTiikC修改学生信息”);this.sctRcsizablc(fiilsc);sN

26、um.sctEditablc(falsc);sNum.suiTuxt("请查询学号) sNamc.sctEditablc(falsc);sScx.sctEditablc(falsc);sSethnic.setEditablc(falsc);sBirth. sc tEdi table(falsc);sY car.sc tEdi tablc(fiil sc);sMa jor. sc tEdi tablc(folse);sCollcge.sctEditablc(falsc);sHomc.sctE<litablc(falsc);设置运行时窗口的位直Dimension scrccnSiz

27、c = Toolkit.gctDcfaultToolkitQ.getScrccnSizcO;this.sctLocati()n(scrccnSizc.wdth - 400) / 2,(scrccnSizc.hcight - 300) / 2 + 45);public void d(>wiilnit0suarchlnfo.sutTuxK”学号查询");suarchlnfo.sutFoni(ncxv Font,'Dialog”,0,12);d()wnPrmcl.add(scarchlnf();modifyinfo.sutTextf,修改modi fylnfb.se tFon

28、t(new Font(M Dialog11,0,12);d()wnPicl.add(m()dif)rInf();cluarlnfo.sutTuxt。清空");clearInfb.sctFont(new Font("Dialog”,0,l2);downPaneLadd(clearInfo);uixtlnfo.sutTuxt("退出");课程设计说明书N0A1cixdnf(>.sciF()nt(nrT Font(Mr)ial()g,OJ 2);downPanel. add (eix tl nfb);scarchlnfo.sct:Enablcd(truc

29、);m()dif)rInf().sctEnablcd(falsc);clcarInf().sctEnablcd(truc);cixtlnf().sctEnablcd(truc);添加事件侦听scarchInf().addActi()nListcncr(this);m()diBrInf().addActi()nListcncr(this);clearlnfb.addActionListencr(this);cixtlnf(>.addActi(>nListcncr(this);this.contentPane.add(downPancl>B°r<lcrLayout

30、SOUTH);public void acti()nPcrf()rmcd(Acti(>nEvciit c) Object obj = c.getSourccQ;StringQ s = new String8;if (obj = eixtlnfo) /退出this.disposcQ;else if (obj = modifylnfb) 修改StuBuan modifyStu = new StuBcaiiQ;modifyStu.stuM(xiify(sNum.gctTextO, sNamc.getTcxtQ, sSex.gctTcxtO, sBirth.gctTcxtO, sHomc.gct

31、TcxtQ, sSethnic.getTextQ, sYcar.gctTcxtQ, sMajor.getTcxtO, sCollegc.getTcxtO);m(>difyStu.stuScarch(sNum.:tTcxtQ);s = m<)difyStu.stuScarch(sNum_str);sNamc.sctTcxt(sO);sScx.sctTcxt(sl);sScihnic.sciTcxt(s2);sH<)mc.sciTcxt(s3);sYcar.sctT cxt(s 4);sMajor.sctTcxt(s5);sCoilcge.sctText(s6);sBirth.sctTcxt(s7);else if (obj = clcarlnfo) 清空sctNullQ;sNum.sutTuxtf 请查询学号”);else if (obj = scarchlnfo) 学号查询StuInf<)ScarchSnum siss = new SiuInfoScarchSnum(this);siss.packQ;siss.sctVisiblc(truc);trysNum_str = siss.gctSnurnO;catch(Exccpti()n cx)

温馨提示

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

评论

0/150

提交评论