Java小项目报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

HUNAN UNIVERSITY Java小项目报告

题目:学生成绩管理系统

学生姓名吕良

学生学号20110801303

专业班级计算机科学与技术(3)班

指导老师文佳宝

完成日期 2013.12.23

Java小项目:学生成绩管理系统

一、项目内容

1、实现数据能够保存,增加修改、删除、查询等功能。

2、利用图形界面与文件操作,增加修改、删除、查询、报表显示输出等

功能

二、实验要求

完成一个Java小项目

三、实验目的

1、掌握文件的操作;

2、掌握系统软件的编程;

3、进一步学习算法的分析与设计;

4、实现真正意义上的文件形式的信息管理系统,为今后数据库形式的信

息管理系统做铺垫;

5、进一步掌握图形界面的设计、面向对象的编程;

6、掌握系统菜单的设计。

四、实验条件

编译器: net beans

Java环境: JDK

操作系统: Windows 7

五、思路分析

1、为避免数据错误,每次操作前检查输入项是否为空、成绩是否为整

数;

2、增加操作时,在写好学号框转移焦点时自动判断学号是否输入、是

否已经存在于数据文件中,并弹出相应提示;

3、修改操作时,在写好学号框转移焦点时自动判断学号是否输入、是

否未存在于数据文件中,并弹出相应提示,如找到填入的学号则自动将数据填入各个文本框中;

4、增删改操作时,在写好学号框转移焦点时自动判断学号是否输入、

是否已经存在于数据文件中,使用布尔型变量标记操作是否完成,并弹出相应提示;

5、修改和删除操作,先将文件中的内容暂存到内存中,再重新写入符

合条件的信息;

6、查询操作,每次转移到该面板即将查询到的内容更新数据表格,可

以是一个指定学号的学生信息,也可以是数据文件中的所有信息;

7、删除操作将删除指定学号的学生信息,因为学号是唯一的,所以只

会删除一行数据;

8、导出到指定文件功能,调用API中的保存文件对话框可指定要保存

的文件和位置,执行方法将数据完整输出到该文件即可;

9、为报表显示数据,写了一个DataTableModel,继承

AbstractTableModel以实现显示学生信息的数据表格。

六、程序代码(部分)

【StudentManager.java】

import javax.swing.*;

import javax.swing.table.*;

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import java.util.*;

1.public class StudentManager extends JFrame{

2.private Container currentContainer = this;

3.private String title = "学生成绩管理系统";

4.private Font headFont = new Font("黑体",Font.PLAIN,18);

5.private File data = new File("data.txt");

6.private DataTable dataModel = new DataTable();

7.private JTable dataTable = new JTable(dataModel);

8.private JLabel extraLabel = new JLabel();

9.private JPanel welcomePanel = createWelcomePanel();

10.private JPanel insertPanel = createInsertPanel();

11.private JPanel displayPanel = createDisplayPanel();

12.private JPanel modifyPanel = createModifyPanel();

13.public StudentManager(){

14./* 设置窗体基本信息 */

15.this.setLocation(300, 300);

16.this.setSize(475,450);

17.this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

18.this.setResizable(false);

19.

20.this.setTitle(title);

21.this.createMenu();

22.this.add(welcomePanel);

23.

24./* 如果数据文件不存在则默认创建一个 */

25.if(!data.exists()){

26.try{

27.new FileWriter(data);

28.}catch(IOException e){

29.}

30.}

31.

32./* 显示窗体 */

33.this.setVisible(true);

34.}

35.

七、调试与运行情况

1、初始界面

2、录入学生成绩

相关文档
最新文档