欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    JAVA课程设计报告学生管理系统 .doc

    • 资源ID:2387027       资源大小:192.50KB        全文页数:20页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    JAVA课程设计报告学生管理系统 .doc

    课程设计说明书 NO.1课程设计题目: 学生管理系统1.课程设计的目的 由于高等学校的快速发展,高校规模越来越大,学生数量与课程数量都在迅速地增长,管理上的手工操作不仅仅会耗费学生与工作人员大量的时间和精力,效率以及准确性也很低。如何使同学们方便,快捷、准确地选课,已经成为一个重要的问题。利用计算机进行学生选课方面的管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的管理系统是十分重要的。2.设计方案论证2.1设计思路根据对系统进行的需求分析,本系统将分为4个模块:分别是学生管理模块、课程管理模块、成绩管理模块、信息查询模块。实现的功能有:(1)增加学生信息系统操作人员打开学生信息增加界面,输入相关信息,在数据库中添加相关数据。(2)修改学生信息根据学生学号查询出该学生的相关信息,修改相关条目后保存在数据库中。(3)删除学生信息根据学生学号查询出该学生的相关信息,确定删除后,在数据库中删除该信息。(4)学生选课选择学生学号与需要选择的课程,确认无误后保存,数据库中将自动添加新的选课记录。 沈 阳 大 学课程设计说明书 NO.2(5)增加课程信息系统操作人员根据打开课程信息增加界面,输入相关信息,在数据库中添加相关数据。(6)修改课程信息根据课程号查询出课程的相关信息,修改相关条目后保存在数据库中。(7)删除课程信息根据课程号查询出该课程的相关信息,确定删除后,在数据库中删除该信息。(8)登记成绩根据学号,以及该学生所选择的课程,进行成绩登记,未选课的学生无法进行登记。(9)修改成绩对登记的成绩信息进行修改。(10)学生查询可以根据学生学号、学生姓名、学生性别、学生所学专业、学生所属学院、来对学生信息进行查询,所有符合查询条件的学生信息都将会被显示出来。(11)课程查询可以按照课程名称,授课教师的姓名,对课程的详细信息进行查询,所有符合查询条件的课程信息都将会被显示出来。(12)成绩查询 根据学生的学号来查询该学生所有课程的成绩。2.2数据库设计数据库中应包含3个表,即课程信息表(Course)、学生信息表(Student)、和学生选课表(SC)。设计表如表1,表2,表3所示。 沈 阳 大 学课程设计说明书 NO.3表1 课程信息表(Course)名称字段名称数据类型主键非空课程编号CnumChar(4)YesYes课程名称CnameVarchar2NoYes授课教师CteacherVarchar2NoNo上课地点CplaceVarchar2NoNo课程类别CtypeChar(1)NoNo 表2学生信息表(Student)名称字段名称数据类型主键非空学号SnumChar(10)YesYes学生姓名SnameVarchar2NoYes性别SsexChar(2)NoNo民族SethnicChar(2)NoNo籍贯ShomeVarchar2NoNo入学年份SyearChar(4)NoNo专业SmajorVarchar2NoNo学院ScollegeVarchar2NoNo出生日期SbirthChar(8)NoNo表3 学生选课表(SC) 沈 阳 大 学课程设计说明书 NO.4名称字段名称数据类型主键非空学号SnumChar(10)YesYes课程编号CnumChar(4)YesYes成绩GradeNumber(4,1)NoNo2.3设计方法(1)学生管理系统主界面模块学生管理系统主界面模块包括StuMS.java和StuMain.java两个文件。StuMS是学生管理系统的主运行类,其中有运行整个程序的main方法,该文件生成了StuMain类的一个实例,从而生成了学生管理系统的界面。StuMain类继承自JFrame类,实现了事件侦听的接口,它有一个不带参数的构造方法StuMain(),用来生成StuMain的实例。StuMain类将所有的功能集中到菜单栏中,并通过调用其他模块来实现学生管理系统的各个功能。(2)学生信息管理模块学生信息管理模块主要由StuInfo.java、AddStuInfo.java、EditStuInfo.java、DelStuInfo.java、SelectCourse.java和StuInfoSearchSnum.java共6个文件组成。StuInfo是AddStuInfo、EditStuInfo、DelStuInfo这3个类的超类,由于AddStuInfo、EditStuInfo和DelStuInfo的界面显示有共同之处,所以编写包含共有界面的StuInfo类,可以快速实现其3个子类的界面显示。它们之间的构成关系如图1所示。这6个类文件组成了主界面中“学生管理”菜单的内容,其中包括增加、修改、删除和学生选课功能。 沈 阳 大 学课程设计说明书 NO.5图1 学生信息管理功能结构图其中StuInfoSearchSnum类是选择学号的类,该类利用getSnum()方法将选择出的学号返回给调用它的类。调用它的类包括EditStuInfo类和DelStuInfo类。(3)课程信息管理模块课程信息管理模块主要由CourseInfo.java、AddCourseInfo.java、EditCourseInfo.java、DelCourseInfo.java、CourseInfoSearchCnum.java这5个文件组成,它们组成了主界面中“课程管理”菜单的内容,其中包括增加、修改和删除功能。CourseInfo是AddCourseInfo、EditCourseInfo、DelCourseInfo这3个类的超类,由于AddCourseInfo、EditCourseInfo和DelCourseInfo的界面显示有共同之处,所以编写包含共有的CourseInfo类,可以快速实现其3个类的界面显示。它们之间的构成关系如图2所示。图2 课程信息管理功能结构图 沈 阳 大 学课程设计说明书 NO.6CourseInfoSearchCnum类是选择课程号的类,该类利用getCnum()方法将选择出的学号返回给调用它的类。调用它的类包括EditCourseInfo类和DelCourseInfo类。(4)成绩信息管理系统成绩信息管理模块主要由GradeInfo.java、AddGradeInfo.java、EditGradeInfo.java这3个文件组成,这3个文件组成了主界面中“成绩管理”菜单的内容,其中包括增加和修改功能。GradeInfo类是AddGradeInfo、EditGradeInfo这两个类的超类,由于AddGradeInfo和EditGradeInfo的界面显示有共同之处,所以编写包含共有界面的GradeInfo类,可以快速实现其两个子类的界面显示。3个文件构成的关系如图3所示。图3 成绩信息管理功能结构图(5)信息查询模块信息查询模块主要包括学生查询、课程查询和成绩查询3个部分。学生查询由StuSearchSnum.java、StuSearchSname.java、StuSearchSsex.java、StuSearchScollege.java、StuSearchSmajor.java和ResultStudent.java这6个文件组成,包括:按照学号查询、按照学生姓名查询、按照性别查询、按照学院查询与按照专业查询。StuSearchSnum.java类是按照学学号查询学生信息的类,支持学号在一定范围内搜索。操作者只需输入需要查询的学号范围,系统会将范围内的信息显示在屏幕上。StuSearchSname.java类是按照学生姓名查询学生信息的类,支持根据学生姓名进行搜索。操作者输入需要查询的学生姓名,系统会将符合条件的信息显示在屏幕上。同时,如果操作者不输入任何信息,系统将会搜索出所有的学生信息。StuSearchSsex.java类、StuSearchScollege.java类、StuSearchSmajor.java类和ResultStudent.java类的实现功能与StuSearchSname.java类功能相似。(6)数据库操作模块Database.java类是对数据库进行操作的类,包括:连接数据库、执行SQL语句、关 沈 阳 大 学课程设计说明书 NO.7闭数据库连接等;StuBean.java类是用语对学生相关信息进行数据库操作的类,包括:学生信息的增加、修改、删除、查询等;CrsBean.java类似乎用于对课程相关信息进行数据库操作的类,包括:课程信息的增加、修改、删除、查询等;csBean.java类是用语对选课信息及成绩的相关信息进行数据库操作的类,包括:选课信息的 、修改、查询,以及成绩的登记、修改、查询等。3.设计结果与分析(1)学生管理系统的主界面,如图4所示。图4 主界面 (2)添加学生信息界面,如图5所示。 图5 添加学生信息界面 沈 阳 大 学课程设计说明书 NO.8(3)若要修改学生信息,先单击“学号查询”选择要修改的学生学号,点击确定后,对所显示的学生信息进行修改。运行界面如图6所示。图6 修改学生信息界面(4)选择“学号”和所要选择的“课程”进行学生选课操作,运行界面如图7所示。图7 学生选课界面(5)添加课程信息,运行效果如图8所示。图8 添加课程界面 沈 阳 大 学课程设计说明书 NO.9 (6)若要修改课程信息,单击“查询”按钮,选择所要修改课程的课程编号,之后该信息会自动显示出来,此时可进行信息的修改,运行效果如图9所示。图9 修改课程信息界面(7)若要添加成绩信息,下拉列表中选择学号,课程名称,之后对该同学的成绩进行录入,运行效果如图10所示。图10 添加成绩界面(8)信息查询包括学生查询、课程查询、成绩查询。若按学号查询,则弹出输入学号的界面,如图11所示。单击“确定“后,则显示所要查询的信息结果。 沈 阳 大 学课程设计说明书 NO.10 4.设计体会通过这次课程设计,使我对JAVA这门课又做了一次系统的复习,对各个知识点也都有了更深刻的理解,让我掌握的更扎实,同时也增强了实际操作能力,了解了学生信息管理系统的工作流程以及工作模式,程序开发过程中涉及到了数据库的相关知识,使我对数据库的使用也更加的熟练,另一方面也对编程语言有了新的认识,为以后的学习打下了基础。在本系统的开发过程中,在知识、经验方面都存在着不足。另外,在整个开发的过程中,时间也比较仓促不能对学生信息管理系统的整个流程完全熟悉,在需求分析时未能做到完全满足用户的需求。5.参考文献1丁振凡.Java语言实用教程M.北京邮电大学出版社,2005.2:105-1212宛延闿.实用Java程序设计教程M.机械工业出版社,2006.4:234-2503张广彬,孟红蕊,张永宝.Java课程设计案例精编M.清华大学出版社,2005.2:355-3634朱喜福.Java程序设计M.人民邮电出版社,2005.9:179-203 沈 阳 大 学课程设计说明书 NO.11附录(1)StuMS.javaimport javax.swing.UIManager;import java.awt.*;public class StuMS boolean packFrame = false;public StuMS() StuMain frame = new StuMain(); if (packFrame) frame.pack(); else frame.validate();/设置运行时窗口的位置Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();Dimension frameSize = frame.getSize();if (frameSize.height > screenSize.height) frameSize.height = screenSize.height;if (frameSize.width > screenSize.width) frameSize.width = screenSize.width;frame.setLocation(screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);frame.setVisible(true); 沈 阳 大 学课程设计说明书 NO.12public static void main(String args) /设置运行风格try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();catch(Exception e) e.printStackTrace();new StuMS();(2)AddStuInfo.javaimport java.awt.event.*;import java.awt.*;import javax.swing.*;public class AddStuInfo extends StuInfo StuBean getSnum = new StuBean();public AddStuInfo() this.setTitle("添加学生信息");this.setResizable(false);sNum.setEditable(false);sNum.setText(""+getSnum.getStuId();sName.setEditable(true);sSex.setEditable(true);sSethnic.setEditable(true);sBirth.setEditable(true); 沈 阳 大 学课程设计说明书 NO.13 sYear.setEditable(true);sMajor.setEditable(true);sCollege.setEditable(true);sHome.setEditable(true);/设置运行时窗口的位置Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation(screenSize.width - 400) / 2, (screenSize.height - 300) / 2 + 45);public void downInit()addInfo.setText("增加");addInfo.setFont(new Font("Dialog",0,12);downPanel.add(addInfo);clearInfo.setText("清空");clearInfo.setFont(new Font("Dialog",0,12);downPanel.add(clearInfo);eixtInfo.setText("退出");eixtInfo.setFont(new Font("Dialog",0,12);downPanel.add(eixtInfo);/添加事件侦听addInfo.addActionListener(this);clearInfo.addActionListener(this);eixtInfo.addActionListener(this);this.contentPane.add(downPanel,BorderLayout.SOUTH); 沈 阳 大 学课程设计说明书 NO.14 public void actionPerformed(ActionEvent e) Object obj = e.getSource();if (obj = eixtInfo) /退出this.dispose();else if (obj = addInfo) /增加sNum.setEnabled(false);sName.setEnabled(false);sSex.setEnabled(false);sSethnic.setEnabled(false);sBirth.setEnabled(false);sYear.setEnabled(false);sMajor.setEnabled(false);sCollege.setEnabled(false);sHome.setEnabled(false);addInfo.setEnabled(false);clearInfo.setEnabled(false);eixtInfo.setEnabled(false);StuBean addStu = new StuBean();addStu.stuAdd(sName.getText(), sSex.getText(), sBirth.getText(), sHome.getText(), sSethnic.getText(), sYear.getText(), sMajor.getText(), sCollege.getText();this.dispose();AddStuInfo asi = new AddStuInfo();asi.downInit(); 沈 阳 大 学课程设计说明书 NO.15asi.pack();asi.setVisible(true);else if (obj = clearInfo) /清空setNull();sNum.setText(""+getSnum.getStuId();(3)EditStuInfo.javamport java.awt.*;import java.sql.*;import java.awt.event.*;import javax.swing.*;public class EditStuInfo extends StuInfo String sNum_str = ""public EditStuInfo() this.setTitle("修改学生信息");this.setResizable(false);sNum.setEditable(false);sNum.setText("请查询学号");sName.setEditable(false);sSex.setEditable(false); 沈 阳 大 学课程设计说明书 NO.16sSethnic.setEditable(false);sBirth.setEditable(false);sYear.setEditable(false);sMajor.setEditable(false);sCollege.setEditable(false);sHome.setEditable(false);/设置运行时窗口的位置Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();this.setLocation(screenSize.width - 400) / 2, (screenSize.height - 300) / 2 + 45);public void downInit()searchInfo.setText("学号查询");searchInfo.setFont(new Font("Dialog",0,12);downPanel.add(searchInfo);modifyInfo.setText("修改");modifyInfo.setFont(new Font("Dialog",0,12);downPanel.add(modifyInfo);clearInfo.setText("清空")clearInfo.setFont(new Font("Dialog",0,12);downPanel.add(clearInfo);eixtInfo.setText("退出");eixtInfo.setFont(new Font("Dialog",0,12);downPanel.add(eixtInfo); 沈 阳 大 学课程设计说明书 NO.17searchInfo.setEnabled(true);modifyInfo.setEnabled(false);clearInfo.setEnabled(true);eixtInfo.setEnabled(true);/添加事件侦听searchInfo.addActionListener(this);modifyInfo.addActionListener(this);clearInfo.addActionListener(this);eixtInfo.addActionListener(this);this.contentPane.add(downPanel,BorderLayout.SOUTH);public void actionPerformed(ActionEvent e) Object obj = e.getSource();String s = new String8;if (obj = eixtInfo) /退出this.dispose();else if (obj = modifyInfo) /修改StuBean modifyStu = new StuBean();modifyStu.stuModify(sNum.getText(), sName.getText(), sSex.getText(), sBirth.getText(), sHome.getText(), sSethnic.getText(), sYear.getText(), sMajor.getText(), sCollege.getText();modifyStu.stuSearch(sNum.getText();s = modifyStu.stuSearch(sNum_str);sName.setText(s0);sSex.setText(s1); 沈 阳 大 学课程设计说明书 NO.18 sSethnic.setText(s2);sHome.setText(s3);sYear.setText(s4);sMajor.setText(s5);sCollege.setText(s6);sBirth.setText(s7);else if (obj = clearInfo) /清空setNull();sNum.setText("请查询学号");else if (obj = searchInfo) /学号查询StuInfoSearchSnum siss = new StuInfoSearchSnum(this);siss.pack();siss.setVisible(true);trysNum_str = siss.getSnum();catch(Exception ex)JOptionPane.showMessageDialog(null, "没有查找到该学号!"); StuBean searchStu = new StuBean();s = searchStu.stuSearch(sNum_str);if(s = null) 沈 阳 大 学课程设计说明书 NO.19JOptionPane.showMessageDialog(null, "记录不存在!");sNum.setText("请查询学号");sName.setText("");sSex.setText("");sSethnic.setText("");sHome.setText("");sYear.setText("");sMajor.setText("");sCollege.setText("");sBirth.setText("");sName.setEditable(false);sSex.setEditable(false);sSethnic.setEditable(false);sBirth.setEditable(false);sYear.setEditable(false);sMajor.setEditable(false);sCollege.setEditable(false);sHome.setEditable(false);modifyInfo.setEnabled(false);return;elsesNum.setText(sNum_str);sName.setText(s0);sSex.setText(s1); 沈 阳 大 学课程设计说明书 NO.20sSethnic.setText(s2);sHome.setText(s3);sYear.setText(s4);sMajor.setText(s5);sCollege.setText(s6);sBirth.setText(s7);sName.setEditable(true);sSex.setEditable(true);sSethnic.setEditable(true);sBirth.setEditable(true);sYear.setEditable(true);sMajor.setEditable(true);sCollege.setEditable(true);sHome.setEditable(true);modifyInfo.setEnabled(true); 沈 阳 大 学

    注意事项

    本文(JAVA课程设计报告学生管理系统 .doc)为本站会员(laozhun)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开