《java学籍管理系统课设报告.doc》由会员分享,可在线阅读,更多相关《java学籍管理系统课设报告.doc(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、课程设计(论文)任务书 软件 学院 软件工程 专业 2 班 一、课程设计(论文)题目 学籍管理系统 二、课程设计(论文)工作自 10 年 12 月 20 日起至 10 年 12 月 24 日止。三、课程设计(论文) 地点: 软件学院实训中心 四、课程设计(论文)内容要求:1本课程设计的目的(1)使学生巩固和提高Java编程技术(2)培养学生掌握程序设计的基本思路和方法; (3)加强学生研发、调试程序的能力;(4)培养学生分析、解决问题的能力;(5)提高学生的科技论文写作能力。2课程设计的任务及要求1)任务:(1)设计基于文件结构的学籍管理系统;(2)录入学生基本信息的功能;(3)修改学生基本信
2、息的功能;(4)查询学生基本信息的功能;(5)删除学生基本信息的功能;2)创新要求: 在基本要求达到后,可进行创新设计,如:如何利用鼠标选取图形,删除。3)课程设计论文编写要求(1)课程设计任务及要求(2)设计思路-工作原理、功能规划(3)详细设计-数据分析、算法思路、类设计、功能实现(含程序流程图、主要代码及注释)、界面等。(4)运行调试与分析讨论-给出运行屏幕截图,分析运行结果,有何改进想法等。(5)设计体会与小结-设计遇到的问题及解决办法,通过设计学到了哪些新知识,巩固了哪些知识,有哪些提高。(6)参考文献(必须按标准格式列出,可参考教材后面的参考文献格式)(7) 报告按规定排版打印,要
3、求装订平整,否则要求返工;(8) 课设报告的装订顺序如下:封面-任务书-中文摘要-目录-正文-附录(代码及相关图片)(9)严禁抄袭,如有发现,按不及格处理。4)答辩与评分标准: (1)考勤:10分; (2)程序检查:30分; (3)课设答辩:20分(3)课程设计报告:40分;5)参考文献:(1)张跃平 王克宏 java2 实用教程 清华大学出版社 (2)丁振凡 java语言实用教程 北京邮电大学出版社(3)百度 谷歌6)课程设计进度安排内容 天数地点构思及收集资料 3寝室编码与调试 3学院实训中心撰写课设 1学院实训中心学生签名: 10年 12月 20 日课程设计(论文)评审意见(1)考勤(1
4、0分):优()、良()、中()、一般()、差(); (2)程序检查(30分):优()、良()、中()、一般()、差(); (3)课设答辩(20分):优()、良()、中()、一般()、差(); (4)课设报告(40分):优()、良()、中()、一般()、差();评阅人: 职称: 讲师 10 年 01 月 25 日 目录一、课设任务及要求1二、需求分析3三、设计思路4四、详细设计5五、运行调试与分析讨论8六、设计体会与小结12七、参考文献13一、 课设任务及要求课设题目:学籍管理系统课设要求: 1. 设计基于文件结构的学籍管理系统2. 添加学生基本信息的功能3. 修改学生基本信息的功能4. 查询学
5、生基本信息的功能5. 删除学生基本信息的功能设计窗体:1.主窗体的设计包括菜单栏的设计2.添加学生基本信息窗体3.修改学生基本信息窗体4.查询学生基本信息窗体5.删除学生基本信息窗体主要任务:1. 用java语言编写相应代码2. 构造总体框架,包括GUI的各个部分3. 设计相应的GUI界面实现各项基本功能4. 调试相应的程序代码5. 对相应过程进行分析应用工具: Java 编程软件:Myeclipse 8.6 操作系统: Windows 7最终基本实现功能样例:二、需求分析基本概述:意图:1、 为了使学籍管理系统更完善2、 方便教务人员对学生信息记性管理;功能需求:1、 录入学生基本信息2、
6、修改学生基本信息3、 修改学生基本信息4、 删除学生基本信息具体需求:实现学生信息的读入包括学生姓名、学号、性别、年龄、专业。以及对学生信息进行修改处理和删除处理并且能够查询学生的基本信息。学生信息关系图:三、设计思路思路介绍: 第一部分:学籍管理系统界面及总体布局 第二部分:具体功能模块包括:1、添加信息模块 2、查找信息模块 3、删除信息模块 4、修改信息模块 模块要求: 更具各个模块的功能需求进行设计。 如删除学生信息模块的设计流程:相应分析:根据上述流程图,可以清晰的知道自己的编写目的,给自己指明了方向。能够很容易的进行程序编写,避免了很多的错误发生。四、详细设计部分功能模块的实现代码
7、:1、学生信息的查询: if(e.getSource()=查询|e.getSource()=学号) String number=;number=学号.getText();if(number.length()0) try inOne=new FileInputStream(file); inTwo=new ObjectInputStream(inOne); 基本信息表=(Hashtable)inTwo.readObject(); inOne.close();inTwo.close(); catch(Exception ee)if(基本信息表.containsKey(number) Student
8、 stu=(Student)基本信息表.get(number); 姓名.setText(stu.getName();专业.setText(stu.getDisciping(); 年级.setText(stu.getGrade();出生.setText(stu.getBorth(); if(stu.getSex().equals(男)男.setSelected(true); else女.setSelected(true); else String warning=该学号不存在!; JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.
9、WARNING_MESSAGE);else String warning=必须要输入学号!;JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE);2、学生信息的删除: if(stu.getSex().equals(男)男.setSelected(true); else 女.setSelected(true); String m=确定要删除该学号及全部信息吗?;int ok=JOptionPane.showConfirmDialog(this,m,确认,JOptionPane.YES_NO_OPTIO
10、N, JOptionPane.QUESTION_MESSAGE);if(ok=JOptionPane.YES_OPTION)基本信息表.remove(number);tryoutOne=new FileOutputStream(file);outTwo=new ObjectOutputStream(outOne);outTwo.writeObject(基本信息表);outTwo.close();outOne.close();学号.setText(null);姓名.setText(null);专业.setText(null);年级.setText(null);出生.setText(null);c
11、atch(Exception ee) System.out.println(ee);else if(ok=JOptionPane.NO_OPTION)学号.setText(null);姓名.setText(null);专业.setText(null);年级.setText(null);出生.setText(null);else String warning=该学号不存在!;JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE); 3、学生信息的修改: if(基本信息表.containsKey(numb
12、er) 录入修改.setEnabled(true);Student stu=(Student)基本信息表.get(number);姓名.setText(stu.getName();专业.setText(stu.getDisciping();年级.setText(stu.getGrade();出生.setText(stu.getBorth(); if(stu.getSex().equals(男)男.setSelected(true);else女.setSelected(true); else 录入修改.setEnabled(false); String warning=该学号不存在!;JOpti
13、onPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSAGE);学号.setText(null);姓名.setText(null);专业.setText(null);年级.setText(null);出生.setText(null); 4、学生信息的录入:if(基本信息表.containsKey(number)String warning=该生基本信息已存在,请到修改页面修改!;JOptionPane.showMessageDialog(this,warning,警告,JOptionPane.WARNING_MESSA
14、GE);elseString m=基本信息将被录入!;int ok=JOptionPane.showConfirmDialog(this,m,确认,JOptionPane.YES_NO_OPTION, JOptionPane.INFORMATION_MESSAGE); if(ok=JOptionPane.YES_OPTION)String name=姓名.getText();String discipling=专业.getText();String grade=年级.getText();String borth=出生.getText();String sex=null;if(男.isSelec
15、ted()sex=男.getText(); elsesex=女.getText(); 学生=new Student();学生.setNumber(number); 学生.setName(name);学生.setDiscipling(discipling); 学生.setGrade(grade);学生.setBorth(borth);学生.setSex(sex); tryoutOne=new FileOutputStream(file); outTwo=new ObjectOutputStream(outOne); 基本信息表.put(number,学生);outTwo.writeObject(
16、基本信息表); outTwo.close();outOne.close();学号.setText(null);姓名.setText(null);专业.setText(null); 年级.setText(null);出生.setText(null);catch(Exception ee)五、运行调试与分析讨论 运行屏幕的截图:(1) 开始运行界面 (2) 学生信息的录入 (3) 学生信息的查询(4) 学生信息的修改(5) 学生信息的删除 运行结果分析:该系统是用Java编写的,基本上实现了课程设计的要求。也许在某些方面还存在着不足,但还是基本上实现了自己预想的功能。不足的部分会在不断的调试中进行
17、改进的,使得程序得到进一步的完善。六、设计体会与小结 通过这次Java课程设计使我对Java有了更进一步的了解,在课设的过程中遇到了许多了问题,自己通过查阅书籍和网络资料最终使问题得到了解决。然而在一开始选择这个题目的时候,一点设计思路都没有,只能参考下别的同学的。然后就自己试着去编写,虽然和别的同学的区别不是很大,但是我已经尽力的去编写了。 在编写程序的过程中,使我发现自己对GUI这一部分的应用是相当欠缺的,不知道如何去使用,这方面的大部分信息都是通过同学的帮助来完成的。当自己真正的完成了本次课设的时候,发现对该部分内容也有了一定的了解并掌握了其中的很多重要的东西,虽然这和老师的要求还有一定
18、的差距但是我会努力的去学好该部分内容。通过本次课程设计使自己对已学的Java的内容,不仅进行了复习而求也进行了相应的应用。在这个过程中,还让自己找出了自己的不足,并通过实践和学习不断的去改进。也使自己明白了,任何一门课程都不可能在短时间内完全掌握,所以要想真正的学好Java还需要在日后的学习生活中不断的努力。在这次课程设计的过程中,自己遇到的很多困难都是通过同学的帮助得到解决的,不仅让自己知道了和同学之间的差距还让我真正体会到了取长补短的道理。总之,本次课程设计不光使自己的Java知识得到了提升,还使自己遇到问题解决问题的能里也得到了提升。为了能更好的提升自己的能力,在今后的学习生活中应该更努力的去学习。 七、参考文献1、 张跃平 王克宏 java2 实用教程 清华大学出版社2、 丁振凡 java语言实用教程 北京邮电大学出版社3、 百度 谷歌