《java课程设计 学生学籍管理系统.docx》由会员分享,可在线阅读,更多相关《java课程设计 学生学籍管理系统.docx(71页珍藏版)》请在第一文库网上搜索。
1、课程设计(论文)任务书学院理学院专 业信息与计算科学学生姓名许岩班级学号0809010214课程名称Java程序设计课程设计课程设计(论文)题目学生学籍管理系统设计题目:学生学籍管理系统,用java语言编程知识和Eclipse软件实现学生学籍管理系统程序。设计目的:1)复习、稳固Java语言的根底知识,进一步加深对Java语言的理解和掌握;2)课程设计为学生提供了一个既动手又动脑,独立实践的时机,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力;3)培养学生在工程开发中的团队合作精神、创新意识及能力。方案与进度安排:周一全天:设计解决问
2、题方法、周三14节;调试程序周一全天:调试程序周三14节:完成论文、辩论。成绩:专业负责人签字):指导教师(签字):2010年7月8日2010年7月18日主管院长签字):2010年7月19日摘要Java语言是当前最为流行的程序设计语言之一,诸多优秀的的特性使其成为被业界广泛认可和采用的工具。本设计可以帮助同学掌握和应运所学的面向对象程序设计学生学籍信息管理系统的编程内容,培养同学们建立对象模型,处理对象和对象集关系和对图形用回界面设计编程以及文件和流的编程问题的能力,训练同学为解决实际问题而创立较完整的简单面向对象和管理系统编程应运程序的独立编程能力,本设计是一个常见的学生学籍管理系统应运程序
3、.系统实现的功能:界面操作实现学生学籍信息的添加、删除、查询、修改功能,在文本文件中的的信息的动态处理。关键词:学生学籍管理系统;图形用户界面设计;文件和流;java-设计目的1二设计问题1三概要设计13.1 主程序面板设计23.2 功能组件的功能实现33.添加学生信息33.查询学生信息43.修改学生信息43.删除学生信息53.重置学生信息5四详细设计5图形用户界面设计5添加功能的实现9重置功能的实现10查询功能的实现10删除功能的实现12修改功能的实现15系统的运行18五设计总结18参考文献19致谢19学生学籍管理系统一、设计目的随着现代社会的快速开展,我们已进入信息化时代,管理系统在人们的
4、生活中的应用越来越广泛,它已深入到我们工作、学习、生活的各个方面。为了适应时代的开展,本次课程设计的主要任务是设计一个学生学籍管理系统并完成一些根本操作。其目的是:(1)运用已学的java知识编一些简单使用的程序,通过本课程设计使我们加深理解、稳固课堂理论知识和实验知识;(2)使我们初步具备综合运用所学Java语言根底知识,面向对象程序设计的根本思想、方法与技术,用户界面设计编程和文件编程技术等开发简单应用系统的根本能力;(3)使理论和实际相结合,真正做到学以致用,并适应时代开展的潮流。二、设计问题学生学籍管理系统要求完成:(1)学生学籍信息的添加、删除、查询、修改功能(2)使用界面操作(3)
5、使用文件完成首先设计面板,然后往面板里添加组件,点击各个组件来实现要求的对学生学籍信息的添加、删除、查询、修改功能。三、概要设计学生信息管理系统的程序文件为AddStudentlnformation. java ,在AddStudentlnformation. java包含名为AddStudent的类。其主要功能为构成学生信息管理系统的主体框架,实现框架上各个组件的事件侦听。主要包括2个模块:图形用户界面的构建:组件监听事件的实现。用例图1表示如下信息添加学生信息录入信息删除信息查询学籍信息数据文件学生学籍信息显示信息修改信息重置j例图1、主程序面板设计:设计主面板如下列图,主面板分为学籍信息
6、输入区、功能操作区和学籍信息显示区。在学生信息输入区里分别有学号、姓名、性别、班级、系别等信息的输入文本框,其数据类型均置为string类型。在功能操作区里有五个按钮分别为:添加、修改、重置、删除、查询。分别实现对文本文件中的的学生信息数据进行添加、修改、删除、查询。其中重置功能按钮为对主程序界面中的信息输入区和信息显示区的文本框中的内容进行去除操作。在学籍信息显示区里使用DefaultTableModel tabieModel=new DefaultTableModel();String: titles=学号,姓名,性别,班级,系别;定义五个titles用来学籍信息的显示。主程序面板如例图2
7、所示。例图2学籍信息输入功能操作学籍信息显示、功能组件的功能实现:添加学生信息在文本框中输入学生信息包括学号、姓名、性别、班级、系别,点击添加按钮弹出对话框如图。该学生信息已成功添加至文件。 如例图3, 4例图3例图4查询学生信息在学号文本框里输入想要查询的学号0809010214,在学生信息显示栏显示信息。如例图5:查询成功,字号姓名性别班级系别0809010214许岩男0891208912例图5修改学生信息在学生信息输入区输入完整的学生信息,点击修改按钮弹出如下对话框,点击是(Y)按钮,程序自动修改文本文件中的学生信息,如例图6, 7。例图6例图7翻开textl.txt文件,查找所修改内容
8、,成功修改内容,再查询学号为08090104的学生信息为如例图8查询成功,学号姓名性别班级|系别08090104李四男I08912|08912例图8说明信息修改成功。删除学生信息只需在信息输入区输入所要删除的学生信息的学号,点击删除按钮弹出如下对话框例图9点击是(Y)按钮,程序进行执行删除功能,并弹出如下对话框,如例图10例图10重置信息点击重置按钮,学籍信息输入区和学籍信息显示区的文本框中的内容都设置为空。四、详细设计定义 AddStudent 类继承 J Frame 类使用 ActionListener, ItemListener 接口实现对事件的监听。以下为用户界面的程序代码及分析:定义
9、String类型的num, name, grade, sex, xibie, oldStr六个变量;在本系统中默认学籍信息中的学号为学生信息的唯一可区分标识。删除、查询和修改时均以学号来进行信息的检索和匹配检测。使用 JLabel 标签类定义lbl_num lbl_name lbl_sex lbl_classlbl_department;使用JTextField类创立文本框用以学籍信息的输入和显示。使用 JButton 类创立 btn rep btn xg btn_cx btn sh btn_add 功能按钮。使用addltemListener ()和addActionListener ()方
10、法功能按钮事件进行监听。使用JRaclioButton类创立rb man rb woman用以学生学籍信息性别的选择。使用DefaultTableModel类定义五个titles用来学籍信息的显示。使用Container容器类,并使用add()方法添加组件到容器中。使用setBounds()方法对每个组件进行位置的设置,并使界面到达最优化。使用setVisible(true)使界面显示各个组件。class AddStudent extends JFrame implements ActionListener, ItemListener public String num,name,grade,
11、sex,xibie,oldStr;JLabel lbl_title = new JLabel(学生信息);JLabel lbl_num = new JLabel(学号:);JLabel lbl_name = new JLabel(姓名:);JLabel lbl_sex = new JLabel(性别:);JLabel lbl_class = new JLabel(班级:);JLabel lbl_department = new JLabel(系别:);JTextField txt_num = new JTextField();JTextField sfzTextl = new JTextFie
12、ld();JTextField bnameTextl = new JTextField();JTextField xbTextl = new JTextField();JTextField dateTextl = new JTextField();JTextField xb = new JTextField();JTextField txt_name = new JTextField(l 1);JTextField txt_class = new JTextField(l 1);JTextField txt_department = new JTextField();J Button btn_
13、rep = new JButton( “重置”);JButton btn_xg = new JButton(修改”);JButton btn_cx = new JButton(查询”);JButton btn_sh = new JButton。删除);JButton btn_add = new JButton(“添力”);JRadioButton rb_man = new JRadioButton(男)JRadioButton rb_woman = new JRadioButton(“女”);DefaultTableModel tableModel=new DefaultTableModel(
14、);String titles1”学号*,姓名:性别*“班级,J系别”;String a,b,c,dfprivate JLabel infoLab = new JLabel(学生信息管理);ButtonGroup bg = new ButtonGroupO;AddStudent(String s) super(s);this.setBounds(500, 50, 390, 600);Container con = this.getContentPane();con.setLayout(null);conadd(lbl_title);con.add(lbl_num);con.add(lbl_name);con.add(lbl_sex);conadd(lbl_class);conadd(lbl_department);con.add(txt_num);con add(txt_name);con.add(txt_class);conadd(txt_department);conadd(btn_rep);con.add(btn_xg);con.add(btn_cx);con.add(btn_sh);con.add(btn_add);con.add(rb_man);con.