学生信息管理 Java 软件工程

学生信息管理 Java 软件工程
学生信息管理 Java 软件工程

武汉理工大学华夏学院课程设计报告书

课程名称:软件工程

题目:学生信息管理系统的设计与开发

系名:信息工程系

专业班级:计算机1121班

姓名:刘明

学号:

指导教师:钱小红

2015 年 7 月 9 日

课程设计任务书

学生姓名:刘明专业班级:计算机1121班

指导教师:钱小红工作单位:信息工程系

设计题目:学生信息管理系统的设计与开发

课程设计的目的与任务:

软件工程课程设计是《软件工程》课程的后续实践课程,本课程设计的目的是通过一周的实践训练,开发一个学生信息管理系统,使同学们经历一个软件从问题定义、分析、设计到开发的全过程和受到一次软件系统开发的综合训练,以便能熟练掌握软件开发的完整生命周期过程及较全面地理解、掌握和综合运用所学的软件工程的知识。结合具体的学生信息管理选题开发项目,理解并掌握系统分析、系统设计、系统实施的主要环节和步骤以及软件文档的制作能力,进一步提高学生分析问题、解决问题,进行一个完整系统开发的能力。课程设计的内容与主要要求:

要求学生根据所学的软件工程的知识,利用所学的Java语言/C++语言/Vb语言

+Mysql/SQL知识实现一个学生信息管理系统,并对实现后的软件进行测试。学生信息管理是学校管理中一项烦琐的工作,各类人员都可能需要借助学生信息管理系统完成一些统计、查询、汇总等工作。例如:

系统管理员需要建立新的角色和用户;

对现有专业、班级、班级学生信息、老师信息及课程信息进行查询以及增加、修改;

学生完成一门课程的学习后,教师需要录入学生的考试成绩,计算平均成绩、查看最高最低分;学生需要查询已结业的各门课程的成绩;系统主要实现用户管理、班级管理、课程管理、成绩管理、学生管理、教师管理、用户登陆、修改密码等功能,详见下表。

表1.1 学生信息管理系统主要功能表

课程设计的步骤及时间进度、场地安排

本课程设计将安排在第19周, 教育技术中心211。具体安排如下:

7月6日上午:下发任务,学生查找资料、确定实训项目;理清整理软件工程实验课所完成的学生信息管理系统需求分析、系统设计及相关模型的建立(通过visio/rational rose/powerdesigner建立系统的需求模型、数据模型及设计模型,具体包括数据流图、软件结构图、程序流程图、ER图、用例图、类图、时序图、活动图、状态图等);

7月7日-7月9日:完成学生信息管理系统的开发及测试;

7月10 日:完成答辩验收、报告的写作,并将以上工作整理成为课程设计报告,于7月10日中午前提交课程设计报告。

课程设计场地安排

课程设计报告撰写格式要求:

1设计题目与要求

2 设计思想

3系统结构

4 数据结构的说明和模块的算法流程图

5 使用说明书(即用户手册)、运行结果、关键界面截图

6 测试计划说明书、测试用例规格说明、缺陷报告

7 自我评价与总结

8 附录:程序清单,注意加注释(包括关键字、方法、变量等),在每个模块前加

注释;

要求层次清楚、整洁规范、不得相互抄袭,凡正文内容有整段完全相同者一律以抄

袭论处。设计报告正文字数不少于0.2万字(不包括附录)。第1级(章)题序和题名用

黑体三号字;第2级(目)题序和题名用黑体小四号字;第3级(条)题序和题名用黑

体小四号字;正文内容用宋体五号字(英文用新罗马体),多倍行距1.25。报告内容一律

使用A4打印纸计算机打印,页码在页下居中标明。必须使用国家公布的规范字。页面

设置:上空2.5 cm,下空2.0 cm,左空2.5 cm,右空2.0cm(左装订)。插图图面要整齐、美观,插图应与正文呼应,不能脱节。每幅插图应有图序与图题,图序编号要连续,图

序与图题间空一格且要放在插图下方居中处。

课程设计考核及评分标准

课程设计考核将综合考虑学生考勤和参与度,系统设计方案正确性,系统设计和开发效果以及课程设计报告书的质量。总分按五级记分法记载最后成绩:优秀(100~90分),良

好(80~89分),中等(70~79分),及格(60~69分),不及格(0~59分)指导教师签字:钱小红2015年7月9日

系主任签字:邱珊2015年7月9日

目录

1.系统概述 (1)

1.1 社会背景 (1)

1.2 研究中出现的主要问题 (1)

1.3 研究目的 (1)

1.4 开发环境和软件 (2)

2.系统需求分析 (2)

2.1 系统设计 (2)

2.2 系统功能分析 (2)

2.3 可行性分析 (2)

3.系统详细设计 (3)

3.1 系统概述 (3)

3.2 系统总体设计 (3)

3.3 系统详细设计 (4)

3.3.1 用户信息管理模块 (4)

3.3.2 学生信息管理模块 (4)

3.3.3 课程信息管理模块 (5)

3.3.4 选课信息管理模块 (5)

3.3.5 成绩信息管理模块 (5)

4.系统数据库设计 (6)

4.1 建立数据库 (6)

4.2 建立数据表 (6)

5.系统测试 (7)

5.1 学生信息管理系统的登录 (7)

5.2 管理员登录 (7)

5.2.1 管理员对学生信息的添加 (8)

5.2.2 管理员对学生信息的修改 (8)

5.2.3 管理员对学生信息的查询 (8)

5.2.4 管理员对学生信息的删除 (9)

5.2.5 管理员显示学生信息 (9)

6.总结 (5)

参考文献 (5)

附录:部分源代码............................................................................................ 错误!未定义书签。

1.系统概述

1.1社会背景

学生管理工作是每个学校必须面对的,它是一项传统且繁琐的教育基础管理工作,极为耗费人力、物力。往常,各学校采用人工管理形式每学期开学时相关人员分别统计各个学生的情况,到了期末又要对相关信息进行处理,比如考试情况、学生课程调动等,面对如此不断反复、繁杂的变化,各学校都要耗费大量的人力、物力。同时,这种传统人工的方式来管理学生工作,还存在着很多缺点,如效率低、保密性差,另外时间长,将产生大量的冗余文件和数据,这给数据的查找、更新和维护工作带来了很大的困难。

随着科学技术的不断提高,特别是计算机、网络等相关技术的日渐成熟,其强大的功能已被人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用,特别是它具有的手工管理所无法比拟的优点,使得各个学校都相继采用了信息技术对学生的有关信息进行管理。通过使用计算机技术等手段,将工作人员从重复、繁杂的手工处理中解脱出来,提高了工作效率,而且减少了人工处理产生的错误。使得教育基础管理工作迈上了一个新的台阶,从而实现了教育基础管理的信息化、科学化、现代化。

1.2研究中出现的主要问题

本文主要基于Java的学生信息管理系统为应用背景,主要研究以下两个方面的问题:(1) 采用比C语言更先进的Java技术建立系统模型和划分模块,采用基于SQL技术访问数据库并构建一个完整的学生信息管理系统。

(2) 改进Java技术的安全性,对系统进行全面综合的评测。分析测评结果,并就java的安全机制的研究与实现提出了几个观点及改进建议。

1.3研究目的

本统提供了学生信息管理中常见的基本功能,主要包括管理员和学生两大模块。管理员的主要功能有对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。学生的主要功能有对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。

1.4开发环境和软件

操作系统:winXP

数据库软件:SQL Server 2005

Java开发工具:Eclipse

2.系统需求分析

2.1系统设计

学生信息管理系统,可用于学校等机构的学生信息管理,查询,更新与维护,使用方便,易用性强,图形界面清晰明了。该软件用java语言编写,用SQLServer2005数据库作为后台的数据库进行信息的存储,用SQL语句完成学生学籍信息的添加,查询,

修改,删除的操作以及成绩的录入,修改,删除等。用ODBC驱动实现前台Java与后台SQL数据库的连接。Java语言跨平台性强,可以在windows,linux,ubuntu等系统下使用,方便简单,安全性好。SQLServer2005数据库高效安全,两者结合可相互利用各自的优势。

2.2系统功能分析

传统的学习信息管理处理方式主要是手工处理,一般只是打印一些学生的主要信息,譬如:学生个人信息、学生各科分数、学生各学期课程。本学生信息管理系统远远超越了传统的手工处理方式,本系统的大致功能有:

1.用户登陆界面。该界面可以选择使用者的身份,“管理员,学生”。不同的身份有不同的操作界面和功能权限,ID号和密码输入正确即可登录。

2.学生管理界面:提供了学生个人信息、班级信息、专业信息、院级信息以及相关科目的成绩查询,修改登录密码等功能。

3.管理员管理界面:提供了对学生学籍信息的查询、添加、修改、删除,学生成绩的录入、修改、删除,查询班级排名、修改密码等功能。

4.管理员管理界面:拥有最高的权限,可以管理人员的登录和退出,通过学号查询学生的信息,添加学生信息,修改学生的信息,删除学生的信息。

5.信息分别存储在SQL数据库的“学生信息表”、“课程信息表”、“选课信息表”和用户信息表中,如果信息这四张表中不存在,将会无权利登录本管理系统。

2.3可行性分析

对于学生信息管理,现在需要用计算机进行对这种庞大数据的处理,本系统主要提供给高校的老师和学生,对于他们来说,基于JAVA系统的学生信息管理系统是非常简单且实用,学生可以随时查看自己的个人信息,如果有需要可以修改自己的个人信息。对于管理者或者说是老师而言,他们可以在家就对学生进行有效的管理,做到快捷,方便。所以从这几个角度出发我们不难发现该系统的可操作性是完全可行的。

3.系统详细设计

3.1系统概述

对于学生信息管理系统而言,会存在很多的实体对象,这些对象之间的关系处理非常的重要,因此在最开始的时候首先想到的是设计数据库里的表结构以及表字段。即想好了需求中需要哪些表,表与表之间的关联是通过哪些字段。以及这样设计的话它的可行性。

3.2系统总体设计

学生信息管理系统主要包括管理员和学生两大模块。管理员模块包括:学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等。用户模块包括:学生信息

查看、成绩信息查看、个人信息管理等。系统总体结构如图3-1所示,用户验证流程图如图3-2所示。

图3-1 系统总体结构图

图3-2 用户验证流程图

3.3系统详细设计

3.3.1 用户信息管理模块

用户信息管理模块包括修改、查询、显示全部等。具体的结构图如图3-3所示。

图3-3 用户信息管理模块结构图

3.3.2 学生信息管理模块

学生信息管理模块包括增加、删除、修改、查询、显示全部等。具体的结构图如图3-4所示

图3-4 学生信息管理模块结构图

3.3.3 课程信息管理模块

课程信息管理模块包括增加、删除、修改、查询、显示全部等。具体的结构图如图3-5所示

图3-5 课程信息管理模块结构图

3.3.4 选课信息管理模块

选课信息管理模块包括查询、显示全部等。具体的结构图如图3-6所示。

图3-6 选课信息管理模块结构图

3.3.5 成绩信息管理模块

成绩信息管理模块包括修改成绩、查询、显示全部等。具体的结构图如图3-7所示。

图3-7 成绩信息管理模块结构图

4.系统数据库设计

4.1建立数据库

安装好SQL Server 2005之后,连接数据库在里面新建student数据库文件

4.2建立数据表

在数据库student中共有4张数据表:s(学生信息表)、c(课程信息表)、sc(选课信息表)、unpw(用户信息表),下面定义每张表的字段名称和数据类型。

字段名称数据类型中文描述

sno char (10) 学号,关键字

cno char (10) 课程号,关键字

g int 成绩

字段名称数据类型中文描述

un char (10) 用户名,关键字

pw char (10) 密码

qx int 角色

5.系统测试

5.1学生信息管理系统的登录

学生信息管理系统可由管理员和学生两种身份的人使用。管理员和学生身份登录所能操作的功能有很大的区别。由于在后台数据库里面新建的用户只有一个管理员(admin)和一个学生(xuesheng),所以登录界面只有这种情况,如图5-1所示

图5-1 登录界面

5.2管理员登录

管理员登录之后就会出现如图5-2所示的界面,管理员可以进入学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理以及退出管理系统就行相应的添加、修改、查询和删除。

图5-2 管理员登录系统后的界面

5.2.1管理员对学生信息的添加

点击学生信息管理模块之后,管理员就在学生信息管理模块上面选择“添加”就可以添加学生信息了,如图5-3所示

图5-3 添加学生信息

5.2.2管理员对学生信息的修改

点击学生信息管理模块之后,管理员就在学生信息管理模块上面选择“修改”就可以修改学生信息了,如图5-4所示

图5-4 修改学生信息

5.2.3管理员对学生信息的查询

点击学生信息管理模块之后,管理员就在学生信息管理模块上面选择“查询”就可以查询学生信息了,如图5-5所示

图5-5 查询学生信息

5.2.4管理员对学生信息的删除

点击学生信息管理模块之后,管理员就在学生信息管理模块上面选择“删除”就可以删除学生信息了,如图5-6所示

图5-6 学生信息删除

5.2.5管理员显示学生信息

点击学生信息管理模块之后,管理员就在学生信息管理模块上面选择“显示”就可以显示所有学生信息了,如图5-7所示

图5-7 显示学生信息

6.总结

在这次课程设计的过程中,在与代码为伴的一个星期里,我真的收获了很多。这次软件工程的课程设计,让我巩固了这学期学的知识,又复习了关于数据库的知识,更是学会了如何将所学的知识运用到实际,真正的应用软件开发,Java开发中来。并且,在设计过程中,通过上网搜索有关资料的同时,也开阔了视野,丰富了自己的知识面。

为期一个星期的课程设计已经结束了,在这个过程中我获益匪浅,比如说初步学会了用Java开发界面,虽然做出的网页不是特别美观,很多地方有瑕疵,但是从一窍不通成长到能逐渐能做出一个功能基本完善的简单的系统,一步步走来,其中收获的不仅是知识,还有动手能力,自学能力,合作能力。总体来说,这次的软件工程课程设计没有我想象中的那么难,刚开始设计时就遇到了很多困难,不过认真听过老师每天的讲解后,很多困难也就迎刃而解了。同时也要感谢老师和同学们的帮助,如果没有他们的帮助,很难完成这次的课程设计。

虽然我的设计其功能基本符合用户需求,能够完成基本的业务操作流程,并提供部分系统维护功能,使用户方便进行数据添加、修改、查询和删除。但是由于设计时间较短,所以该系统还有许多不尽如人意的地方,比如说明文档比较少,用户界面不够美观,出错处理不够等多方面的问题。这些都有待进一步改善,希望在以后的学习和工作中得以完善。

参考文献

[1] 邱珊主编,《Java语言程序设计》,科学出版社 2008.2

[2] 高金兰,鲁立,《数据库原理与SQL Server应用》,科学出版社 2010.3

[3] 李春宝主编,《数据库原理与应用》,清华大学出版社,2009.4

附录

1.程序类的设计

SimpleStudentManager 主函数类

DLFrame 登陆界面类

ManagerFrane 管理员界面类

StudentFrame 学生界面类

SM 学生信息管理的类

SAdd 用于学生信息管理中增加或修改某条记录的界面的类

SSelect 用于学生基本信息管理中查询时输入学号的界面的类

CM 课程信息管理的类

CAdd 用于课程信息管理中增加或修改某条记录的界面的类

CSelect 用于课程信息管理中查询时输入课程号的界面的类

SCM 选课信息管理的类

SCSelect 用于选课信息管理中查询时输入学号的界面的类

GM 成绩信息管理的类

GAdd 用于成绩信息管理中修改成绩的界面的类

GSelect 用于成绩信息管理中查询时输入学号的界面的类

PM 用户信息管理的类

UAdd 用于用户信息管理中修改密码的界面的类

PSelect 用于用户信息管理中查询时输入用户名的界面的类

StudentS 用于学生信息查看时输入学号的界面的类

StudentSelect 用于成绩信息查看时输入学号的界面的类

PPM 个人信息管理的类

PPSelect 用于个人信息管理查询时输入用户名的界面的类

2.源代码

import javax.swing.*;

import java.awt.*;

import java.sql.*;

class CAdd extends JFrame implements ActionListener{// 用于课程信息管理中增加或修改某条记录的界面

JLabel lcno = new JLabel("课程号:");

JLabel lcname = new JLabel("课程名:");

JLabel lpcno = new JLabel("先行课程号:");

JTextField tcno = new JTextField(10);

JTextField tcname = new JTextField(10);

JTextField tpcno = new JTextField(10);

JButton btnOK = new JButton("确定");

JButton btnCancel = new JButton("取消");

JPanel p = new JPanel();

Connection con = null;

Statement stmt = null;

ResultSet rs = null;

boolean isNewsm = true;// 用于判断是否显示课程信息管理的界面 public CAdd() {// 构造方法

this.setTitle("增加");

this.setBounds(200, 200, 146, 235);

p.setLayout(new FlowLayout(FlowLayout.LEFT));

p.add(lcno);

p.add(tcno);

p.add(lcname);

p.add(tcname);

p.add(lpcno);

p.add(tpcno);

p.add(btnOK);

p.add(btnCancel);

this.add(p);

this.setResizable(false);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

btnOK.addActionListener(this);

btnCancel.addActionListener(this);

this.show();

}

public void connDB() { // 连接数据库

try {

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

try {

con = DriverManager.getConnection(

"sa", "123");

stmt = con.createStatement();

} catch (SQLException e) {

e.printStackTrace();

}

}

public void closeDB() // 关闭连接

{

try {

stmt.close();

con.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

public void insertst() { // 插入记录

String kch = null;

String kcm = null;

String xxkch=null;

kch = tcno.getText();

kcm = tcname.getText();

xxkch=tpcno.getText();

if (this.getTitle() == "修改") {// 如果是修改记录,先删除再增加

try {

this.connDB();

int rs1 = stmt.executeUpdate("delete from c where cno='"

+ kch + "'");

} catch (SQLException e) {

e.printStackTrace();

}

}

String str = "insert into c values('" + kch + "','" + kcm + "','"

+ xxkch + "')";

this.connDB();// 连接数据库

try {

stmt.executeUpdate(str);

JOptionPane.showMessageDialog(null, this.getTitle() + "成功!",

"提示", https://www.360docs.net/doc/329531483.html,RMA TION_MESSAGE, new ImageIcon(

"menu4.gif"));

this.setVisible(false);

}

catch (SQLException e) {

JOptionPane.showMessageDialog(null, "课程号已存在!");

tcno.setText("");

}

}

public void actionPerformed(ActionEvent e) {

if (e.getActionCommand() == "确定") {

this.insertst();

if (isNewsm) {

new CM("课程信息管理").display();

}

isNewsm = true;

}

if (e.getActionCommand() == "取消") {

this.setVisible(false);

new CM("课程信息管理").display();

}

}

}

import java.sql.*;

import java.util.*;

import javax.swing.*;

class CM extends JFrame implements ActionListener {// 课程信息管理 JPanel p = new JPanel();

JButton btnAdd = new JButton("增加");

JButton btnDelete = new JButton("删除");

JButton btnAlter = new JButton("修改");

JButton btnSearch = new JButton("查询");

JButton btnDisplay = new JButton("显示");

JMenuBar mb = new JMenuBar();

JPanel p1 = new JPanel();;

JTable sTable;

JScrollPane scroll;

Connection con = null;

Statement stmt = null;

ResultSet rs = null;

Object[][] playerInfo;

CSelect cst;

String mkch = null;

boolean bstd = false;

CM(String title) {// 构造方法

super(title);

add("South", p);

this.add("Center", p1);

mb.add(btnAdd);

mb.add(btnDelete);

mb.add(btnAlter);

mb.add(btnSearch);

mb.add(btnDisplay);

this.connDB();// 连接数据库

this.setBounds(200, 200, 400, 260);

btnAdd.addActionListener(this);

btnDelete.addActionListener(this);

btnAlter.addActionListener(this);

btnSearch.addActionListener(this);

btnDisplay.addActionListener(this);

this.setJMenuBar(mb);

// this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setResizable(false);

show();

}

CM(CSelect cst, String title) {// 构造方法

super(title);

this.cst = cst;

bstd = true;

add("South", p);

this.add("Center", p1);

mb.add(btnAdd);

mb.add(btnDelete);

mb.add(btnAlter);

mb.add(btnSearch);

mb.add(btnDisplay);

this.connDB();

this.setBounds(200, 200, 400, 260);

btnAdd.addActionListener(this);

btnDelete.addActionListener(this);

btnAlter.addActionListener(this);

btnSearch.addActionListener(this);

btnDisplay.addActionListener(this);

this.setJMenuBar(mb);

// this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setResizable(false);

show();

}

public void display() {// 显示所有的课程信息

int i = 0;

int j = 0;

int k = 0;

List al = new ArrayList();

try {

rs = stmt.executeQuery("select * from c");

while (rs.next()) {// 找出表中的记录数赋给i

al.add(rs.getString("cno"));

al.add(rs.getString("cn"));

al.add(rs.getString("pcno"));

i++;

}

} catch (SQLException e) {

e.printStackTrace();

}

playerInfo = new Object[i][3];

String[] columnNames = { "课程号", "课程名", "先行课程号" };

try {

rs = stmt.executeQuery("select * from c order by cno");

while (rs.next()) {

playerInfo[j][0] = rs.getString("cno");

playerInfo[j][1] = rs.getString("cn");

playerInfo[j][2] = rs.getString("pcno");

j++;

}

} catch (SQLException e) {

e.printStackTrace();

}

sTable = new JTable(playerInfo, columnNames);// 创建网格

p1.add(sTable);

scroll = new JScrollPane(sTable);

this.add(scroll);

}

public void connDB() { // 连接数据库

try {

} catch (ClassNotFoundException e) {

e.printStackTrace();

}

try {

con = DriverManager.getConnection(

"sa", "123");

stmt = con.createStatement();

} catch (SQLException e) {

e.printStackTrace();

}

}

public void closeDB() // 关闭连接

{

try {

stmt.close();

con.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

public void delete() {// 删除某个课程信息

String kch = null;

String kcm = null;

String xxkch = null;

int row = -1;

row = sTable.getSelectedRow();

if (row == -1) {// 判断要删除的信息是否被选中

JOptionPane.showMessageDialog(null, "请选择要删除的记录!");

} else {

if (!bstd) {// 判断选择的是不是查询后的结果

int j1 = 0;

try {

rs = stmt.executeQuery("select * from c");

while (rs.next() && j1 <= row) {// 找出当前被选中的记录在数据库中的对应

kch = rs.getString("cno");

kcm = rs.getString("cn");

xxkch = rs.getString("pcno");

j1++;

}

} catch (SQLException e) {

e.printStackTrace();

}

int i1 = 0;

try {

int rs1 = stmt.executeUpdate("delete from c where cno='"

+ kch + "'");// 删除数据库中当前被选中的记录

JOptionPane.showMessageDialog(null, "记录删除成功!");

this.dispose();

new CM("课程信息管理").display();

} catch (SQLException e) {

e.printStackTrace();

}

} else {

try {

int rs1 = stmt.executeUpdate("delete from c where cno='"

+ mkch + "'");// 删除数据库中当前被选中的记录

JOptionPane.showMessageDialog(null, "记录删除成功!");

this.dispose();

new CM("课程信息管理").display();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

}

public void update() {// 修改某个课程记录

String kch = null;

String kcm = null;

String xxkch = null;

int row = -1;

row = sTable.getSelectedRow();

if (row == -1) {

JOptionPane.showMessageDialog(null, "请选择要修改的记录!");

} else {

int j1 = 0;

try {

if (!bstd) {// 判断选择的是不是查询后的结果

rs = stmt.executeQuery("select * from c");

} else {

rs = stmt.executeQuery("select * from c where cno='" + mkch

+ "'");

}

while (rs.next() && j1 <= row) {// 找出当前被选中的记录在数据库中的对应

kch = rs.getString("cno");

kcm = rs.getString("cn");

xxkch = rs.getString("pcno");

j1++;

}

} catch (SQLException e) {

e.printStackTrace();

}

CAdd cadd = new CAdd();

cadd.setTitle("修改");

this.dispose();

}

}

public void select() {// 显示某个查询的结果

mkch = cst.kch;

playerInfo = new Object[1][3];

String[] columnNames = { "课程号", "课程名", "先行课程号" };

try {

rs = stmt.executeQuery("select * from c where cno='" + mkch + "'");

while (rs.next()) {

playerInfo[0][0] = rs.getString("cno");

playerInfo[0][1] = rs.getString("cn");

playerInfo[0][2] = rs.getString("pcno");

}

} catch (SQLException e) {

e.printStackTrace();

}

if (playerInfo[0][1] == null) {

this.dispose();

JOptionPane.showMessageDialog(null, "课程号不存在!");

new CM("课程信息管理").display();

} else {

sTable = new JTable(playerInfo, columnNames);// 创建网格

p1.add(sTable);

scroll = new JScrollPane(sTable);

this.add(scroll);

}

}

public void actionPerformed(ActionEvent e) {

if (e.getActionCommand() == "增加") {

new CAdd();

this.dispose();

}

if (e.getActionCommand() == "删除") {

this.delete();

}

if (e.getActionCommand() == "修改") {

this.update();

}

if (e.getActionCommand() == "查询") {

cst = new CSelect();

this.dispose();

}

if (e.getActionCommand() == "显示") {

this.dispose();

new CM("课程信息管理").display();

}

}

}

import javax.swing.*;

public class CSelect extends JFrame implements ActionListener {// 用于课程信息管理中查询时输入课程号的界面

JLabel ltitle = new JLabel("课程号:");

JTextField tcno = new JTextField(8);

JButton btnOK = new JButton("确定");

JPanel p = new JPanel();

String kch = null;

public CSelect() { // 构造方法

p.add(ltitle);

p.add(tcno);

p.add(btnOK);

add(p);

this.setBounds(300, 280, 200, 160);

btnOK.addActionListener(this);

this.setResizable(false);

学生信息管理系统(Java)+代码

学生信息管理系统设计 1、系统简介 本系统提供了学生信息管理中常见的基本功能,主要包括管理员和学生两大模块。 管理员的主要功能有对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。学生的主要功能有对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。 2、功能设计 2.1 需求分析 本系统需要实现的功能: (1)、管理员对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。 (2)、学生对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。 2.2 总体设计 学生信息管理系统主要包括管理员和学生两大模块。管理员模块包括:学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等。用户模块包括:学生信息查看、成绩信息查看、个人信息管理等。系统总体结构如图所示。 总体结构图 2.3 模块详细设计 1、学生信息管理模块 学生信息管理模块包括增加、删除、修改、查询、显示全部等。具体的结构图如图所示。

学生信息管理模块结构图 2、课程信息管理模块 课程信息管理模块包括增加、删除、修改、查询、显示全部等。具体的结构图如图所示。 课程信息管理模块结构图 3、选课信息管理模块 选课信息管理模块包括查询、显示全部等。具体的结构图如图所示。 选课信息管理模块结构图 4、成绩信息管理模块 成绩信息管理模块包括修改成绩、查询、显示全部等。具体的结构图如图所示。

成绩信息管理模块结构图 5、用户信息管理模块 用户信息管理模块包括修改、查询、显示全部等。具体的结构图如图所示。 用户信息管理模块结构图 3、数据库设计 在数据库student中共有4张数据表:s(学生信息表)、c(课程信息表)、sc(选课信息表)、unpw(用户信息表),下面定义每张表的字段名称和数据类型。

学生信息管理系统软件工程

河南工程学院计算机学院课程设计报告书学生信息管理系统 学生学号: 学生姓名: 学院: 专业班级:软件工程1241 专业课程:软件工程 指导教师: 2015年1 月9日

本组成员 题目 考核项目考核内容得分平时考核 (10分)出勤情况、态度、效率、协作精神;知识掌 握情况、知识应用能力、获取知识能力。 选题背景、目的意义和国内外研究现状(10分)选题背景、目的意义和国内外研究现状内容全面,体现学生查阅资料充分。 系统可行性研究 (10分)对所选课题从技术上、操作上和经济上等方 面进行分析可行性。 系统需求分析 (30分)确定系统功能需求、性能需求、出错处理需 求等;分析系统的数据要求,画出实体-联系图等。 系统设计 (15分)确定软件结构,设计软件结构图和数据库设 计;主要模块的过程设计等。 课程设计体会、格式排版 (20分)课程设计体会深刻,报告书写干净、规范, 内容完整,语句通顺,图表正确等。 奖励分(5分)提前完成的加分。 总评成绩 指导教师评语: 年月日

目录 1 绪论 (1) 选题背景和意义 (1) 国内外研究现状 (1) 国内研究现状 (1) 国外研究现状 (2) 存在的主要问题和拟解决方法 (2) 论文研究的主要内容 (2) 2 系统可行性分析 (3) 技术可行性 (3) 经济可行性 (3) 操作可行性 (3) 3 系统需求分析 (4) 功能需求 (4) 性能需求 (5) 数据流程图 (5) 数据字典 (9) 学生信息管理 (9) 成绩管理模块 (9) 课程信息管理模块 (10) 查询模块 (10) 4 系统设计 (11) 系统框架 (11) 系统流程分析 (11) 系统模块分析 (12) 数据库设计 (20) 5 课程设计体会 (22) 参考文献 (23)

C++实现:简单的学生信息管理系统

<< endl << endl; cout << "按下1:进入学生信息管理系统." << endl; cout << "按下0:退出." << endl; cout << "-----------------------------------------------------" << endl<> flagOperateInformation; (); cout << endl; if (flagOperateInformation) EditMenu(); } } << endl; cout << "按下2:修改学生信息." << endl; cout << "按下3:删除学生信息." << endl; cout << "按下4:显示学生信息." << endl; cout << "按下5:按学号升序排序" << endl; cout << "按下6:读入已有信息(暂时没实现)" << endl; cout << "按下7:将信息输出(暂时没实现)" << endl; cout << "按下8:显示系统内所有学生的信息" << endl; cout << "按下0:返回上一级." << endl; cout << "--------------------------------------------" << endl << endl; cin >> flagContinueOperation; (); cout << endl; switch (flagContinueOperation) { case 1:AddStudentPersonalInformation(1); break; case 2:ModifyStudentInformation(); break; case 3:DeleteStudentInformation(); break; case 4:DisplayStudentInformation(); break; case 5:RankByID(); break; case 6:cout << "功能暂未实现" << endl; break; case 7:cout << "功能暂未实现" << endl; break; case 8:DisplayAllStudentInformation(); break; case 0:break; } } } tudent_WritePersonalInformation(iD,name,address,phone); cout << "基本信息输入成功!" << endl << "------------------------------" << endl; } tudent_WriteMaPhEgGrade(mathGrade, physicsGrade, englishGrade); cout << "学习成绩输入成功!" << endl

Java学生信息管理系统

MainClass.java public class MainClass { public static void main(String args[]) { new ManagerWindow(); } } Student.java public class Student implements java.io.Serializable { String number,name; public void setNumber(String number) { this.number=number; } public String getNumber() { return number; } public void setName(String name) { https://www.360docs.net/doc/329531483.html,=name; } public String getName() { return name; } } ManagerWindow.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import java.util.Hashtable; public class ManagerWindow extends Frame implements ActionListener { InputStudent 基本信息录入=null; Inquest 基本信息查询=null; Button 查询; Hashtable 基本信息=null; File file=null; public ManagerWindow() { 基本信息=new Hashtable(); 查询=new Button("查询"); 查询.addActionListener(this); file=new File("基本信息.txt"); if(!file.exists()) { try{ FileOutputStream out=new FileOutputStream(file); ObjectOutputStream objectOut=new ObjectOutputStream(out); objectOut.writeObject(基本信息); objectOut.close(); out.close(); } catch(IOException e){} }

学生信息管理系统程序

. C语言上机实践报告 专业:冶金工程 班级:冶金1102 姓名: 学号: 任课教师:丽华 时间:2012年8月

一、题目 学生信息管理系统设计 ●学生信息包括:学号,姓名,年龄,性别,出生年月,地址,,E-mail等。 ●试设计一学生信息管理系统,使之能提供以下功能: a)系统以菜单方式工作 b)学生信息录入功能(学生信息用文件保存)---输入 c)学生信息浏览功能---输出 d)查询、排序功能---算法 (1) 按学号查询 (2) 按姓名查询 e)学生信息的删除与修改(可选项) 一、系统功能模块结构图

二、数据结构设计及用法说明#include"stdio.h" #include"stdlib.h" #include"string.h" /*定义结构体用作创建链表*/ typedef struct z1 { char no[11]; //学生学号 char name[15]; //学生姓名 int age; //学生年龄 char sex; //学生性别 char birthday[8]; //学生出生年月char address[20]; //学生住址 char tel[12]; //学生联系 char e_mail[20]; //学生e-mail struct z1 *next; //指向下一链表}STUDENT; /*声明用户自定义函数*/ STUDENT *init();

STUDENT *create(); STUDENT *del(STUDENT *h); STUDENT *insert(STUDENT *h); STUDENT *revise(STUDENT *h); void print(STUDENT *h); void search1(STUDENT *h); void search2(STUDENT *h); void save(STUDENT *h); int menu_select(); void inputs(char *prompt,char *s,int count); /*主函数,用于选择功能*/ void main() { STUDENT *head; head=init(); //初始化链表表头 for(;;) { switch(menu_select()) { case 0:head=init();break; //初始化 case 1:head=create();break; //创建列表

简单学生信息管理系统设计

——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: : 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组容。 2.设计实现一个简单的信息管理系统。 实验容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有、学号、math、os、java用来存放 对应的成绩,在构造方法中进行、学号、课程成绩的赋值。 Override有Object继承来的tostring方法已便友好格式显 示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方法, 在main中写一段测试代码,运行以保证目前所做工作的 正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到新 数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 (判断是否相等使用string类的equalsIgnoreCase方 法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的容,注意要考虑以前未保存容的情况, 可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息2按学号查找 3 按查找 4 按学号删除 5 保存 6 读入7 退出 请输入数字(1-7): 程序代码

基于JAVA学生信息管理系统

江西科技师范大学毕业设计(论文) 学生姓名: 题目(中文):基于Java的学生信息管理系统 (外文):Student Information Management System based on Java 院(系):数学与计算机科学学院 专业:计算机科学与技术 年级:学号: 指导教师: 时间:2016 年 4 月 2016年4月20日 目录

1.引言 (1) 1.1 项目开发背景和意义 (1) 1.2 国内外的研究现状 (1) 2.系统主要技术及开发环境介绍 (2) 2.1 Java语言 (2) 2.2 Eclipse简介 (2) 2.3 Mysql概述 (2) 2.4 jsp技术概述 (3) 3.系统需求分析 (3) 3.1功能需求分析 (3) 3.2框架结构设计分析 (4) 3.3用户需求分析 (4) 4.系统概要设计 (5) 4.1系统结构图 (5) 4.2系统主要功能模块设计 (5) 4.3程序流程图 (7) 4.4数据库设计 (8) 4.4.1数据库概念结构设计 (9) 4.4.2数据库逻辑结构设计 (11) 5.系统实现 (13) 5.1登录模块系统实现 (13) 5.2基本信息管理实现 (14) 5.3成绩管理实现 (21) 5.4课程管理实现 (23) 5.5班级管理实现 (26) 6.总结和展望 (28) 6.1总结 (28) 6.2 展望 (29)

参考文献 (29)

基于Java的学生信息管理系统 摘要:基于Java的学生信息管理系统分为五大模块:登录管理、学生基本信息管理、成绩管理、课程管理和班级管理。本文详细介绍了前台界面的操作及后台数据库的链接,根据模块制定各个功能的所需界面的实现方法。该系统具有十分清晰友好的界面,操作界面简洁,便于使用。 关键字:学生信息管理;MYSQL;JA VA 1.引言 1.1 项目开发背景和意义 随着科学技术的快速发展和不断提高,尤其是计算机科学技术的日渐普及,其功能的强大以及运行速度已经被人们深刻地了解。近几年来高校的办学模式多元化和学校规模的扩大,为了实现对学生信息进行科学管理,因此开发一个简单快速规范的平台。学生的信息管理是教务管理的一个至关重要的部分,传统的方法不仅费人力和时间,而且效率低。如学生发生班级调动,传统的方法需要人工及时更改信息,十分复杂,使得该学生信息不能合理地配置。而使用计算机技术对学生档案信息进行管理的优点具有便于查找、检索快速、统计科学、保密性强、管理规范、节约成本等优点。 1.2 国内外的研究现状 学生信息管理工作是各大高校必不可少的管理工作之一,在学校占据重要的地位,它涉及到学生、老师和管理员等多方面。由于各大高校学生人数日益增长,因此研发出一款具有操作灵活且人性化的管理系统成为了迫切需要。 从国外看来许多高校一般是由技术强大稳定的队伍来完成该系统程序的设计与研制,或者是本校的某个院系。在西方电子管理系统的概念早已被学生引入,他们可以通过网络浏览学校的管理系统网站,以及学校的学术信息等。可以查看个人信息、考试成绩和课程,这种方式大大地减轻了人力和时间。 从国内研究现状来看,而国内的起步相对较晚,在信息安全和更新方面尚有欠缺,且建立单独的资料共享性差。随着数字校园理论的逐步应用,各高校不断地开发研制各种办公和教学管理等系统,已经成为了一种全面信息化建设体系。

学生信息管理系统 java 连接数据库

import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Date; import java.util.Scanner; public class Student { public static final String DRIVER="sun.jdbc.odbc.JdbcOdbcDriver"; public static final String URL="jdbc:odbc:student"; public static final String USERNAME="root";//用户名 public static final String PASSWORD="root";//密码 private static String name;//当前登录管理员的名字 private static int userid;//当前登录管理员的主键 //获得jdbc链接 public Connection connection(){ try { Class.forName(DRIVER); Connection con=DriverManager.getConnection(URL, USERNAME, PASSWORD); return con; } catch (Exception e) { e.printStackTrace(); } return null; } //管理员登陆 public boolean login() throws Exception{ Scanner sc = new Scanner(System.in); System.out.print("输入用户名:"); String username = sc.next(); System.out.print("输入密码:"); String password = sc.next(); //查找该用户 String sql = "select username,id from muser where username='" + username + "' and password='" + password + "'";

基于java学生信息管理系统设计与实现

基于java的学生信息管理系统设计与实现

基于java的学生信息管理系统设计与实现 摘要:利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找便、可靠性高、存储量大、保密性好。本设计就是一个为实现信息化管理而开发的信息管理系统,能够进行信息存储、查询、修改等能功。该系统由六个模块构成,包括学生管理系统的主界面模块、学生信息管理模块、课程信息管理模块、成绩信息管理模块、信息查询模块和数据库操作模块。通过这些模块的有机结合,能便的对学生信息进行综合管理,从而实现了信息化管理的目的。由于本人的能力有限,设计过程中难免有不足之处,设计中的存在问题本人将在日后进一步修改,以便让程序的设计更加完善。 关键词:oracle; 异常处理;关系模型

目录 1 引言 0 1.1背景及意义 (3) 1.2 实验技术选择 (4) 1.3 课题实现技术的简要说明 (7) 1.4可行性分析 (8) 2系统需求分析 (9) 3 学生信息管理系统设计 (10) 3.1数据模型分析与设计 (10) 3.2 结构设计与结构功能图 (13) 3.2.1 结构设计 (13) 3.2.2 功能结构图 (13) 4 系统实现 (15) 5 系统调试与测试 (20) 5.1系统功能测试 (20) 5.2系统调试常见错误 (20) 6 实验小结 (22) 参考文献 (22)

1 引言 1.1背景及意义 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的式管理文件档案、统计和查询数据,这种管理式存在着多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理无法比拟的优点。例如:检索迅速、查询便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找便、可靠性高、存储量大、保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的信息管理系统是十分重要的。这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规化管理,与世界接轨的重要条件。 本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。通过一个简化的学生信息管理系统,使学生信息管理工作系统化、规化、自动化,从而达到提高学生信息管理效率的目的。本课题就是针对便于学生信息管理的问题而设计的一个管理系统。

学生信息管理系统程序设计

学生信息管理系统 程序设计

学生信息管理系统程序设计 1、软件开发目的 该软件主要是实现对学生基本信息进行系统化的管理,首先能够对学生基本信息进行录入和存取,其次能够浏览学生的相关信息,然后能够删除和插入学生的相关信息,还有就是可按学号或按学生姓名查询此学生的相关信息。由此来系统化管理学生基本信息,并达到简易操作的目的。 2、功能分析说明图 3、各项功能说明 (1)学生基本信息的录入和保存: 在链表中的适当位置插入一个学生信息节点,一次添加一条学生信息(添加内容包含学号、姓名、年龄),如果添加的学号已经在文件中存在,则不能添加到文件中去,应显示错误提示语;如果添加成功,则显示成功提示语。添加操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (2)显示学生信息: 此功能是显示一个学生信息节点中的信息,并在屏幕上显示出来。 (3)删除学生信息: 进入该项功能界面后,删除学生信息,一次删除一条学生信息。

(4)按学号查找学生信息: 按学号查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (5)按姓名查找学生信息: 按姓名查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (6)修改学生信息 修改学生信息中的某一项信息,一次更新一条学生信息(更新内容包含学号、姓名、年龄等字段值),如果更新的学号在文件中不存在,则不能更新,应该显示错误提示语;如果更新成功,则显示成功提示语。更新操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (7)退出系统,结束任务。 4、软件功能的验收标准

简单学生信息管理系统

简单学生信息管理系统-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: 姓名: 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组内容。 2.设计实现一个简单的信息管理系统。 实验内容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有姓名、学号、math、os、java用 来存放对应的成绩,在构造方法中进行姓名、学号、课 程成绩的赋值。Override有Object继承来的tostring方法 已便友好格式显示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方 法,在main中写一段测试代码,运行以保证目前所做工 作的正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制 到新数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误 信息。(判断姓名是否相等使用string类的 equalsIgnoreCase方法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容的 情况,可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如 下: 1显示所有学生信息 2按学号查找 3 按姓名查找 4 按学号删除 5 保存 6 读入 7 退出 请输入数字(1-7):

基于java的学生信息管理系统设计与实现

基于java的学生信息管理系统设计与实现 基于java的学生信息管理系统设计与实现摘要:利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。本设计就是一个为实现信息化管理而开发的信息管理系统,能够进行信息存储、查询、修改等能功。该系统由六个模块构成,包括学生管理系统的主界面模块、学生信息管理模块、课程信息管理模块、成绩信息管理模块、信息查询模块和数据库操作模块。通过这些模块的有机结合,能方便的对学生信息进行综合管理,从而实现了信息化管理的目的。由于本人的能力有限,设计过程中难免有不足之处,设计中的存在问题本人将在日后进一步修改,以便让程序的设计更加完善。 关键词:oracle;异常处理;关系模型 目录

1 引言 1.1背景及意义 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理无法比拟的优点。例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的信息管理系统是十分重要的。这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规化管理,与世界接轨的重要条件。 本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。通过一个简化的学生信息管理系统,使学生信息管理工作系统化、规范化、自动化,从而达到提高学生信息管理效率的目的。本课题就是针对便于学生信息管理的问题而设计的一个管理系统。 1.2 实验技术选择 本课题设计主要运用的技术有两个:java项目开发和oracle对数据库的操作。这里主要介绍本课题为什么选用这两个开发技术: ⑴首先了解一下Java语言特点

学生信息管理系统C程序

#include #include #include #include//getch();kibhit()的头文件struct student { int id; char name[20]; char password[11]; char classs[6]; struct like { float physics;//物理 float biology;//生物 float chemistry;//化学 }grade; int age; int ranking; }; typedef struct student ST;//为已有的数据类型命名struct administrator { char name[20]; char password[11]; }ad={"lichao","12343456"}; void Chushihua();//系统初始化函数 void Stucpw(int i);//学生改密函数 void Ssave(ST stu[30],int r);//系统保存函数 void Stuadd();//添加学生函数 int Save_enquiry();//修改确定询问函数 void Studelete();//删除学生函数 void Stualter();//修改学生函数 void Sturefer();//学生查询函数 void Sturank(ST stu0[30],int i);//终极排名函数void Stuclassesrank();//学生班级挑选函数 void Stuallout();//少女通灵之术 char* Passwordinputhide(); int main() { int flag0=0;//选择登陆方式的标志 int flag1;//密码错误次数标志 int flag3;//选择操作方式的标志 char ad_name[20];//输入的管理员名字 char ad_password[11];//输入的管理员密码

简单学生信息管理系统

. ——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: : 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组内容。 2.设计实现一个简单的信息管理系统。 实验内容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有姓名、学号、math、os、java用来 存放对应的成绩,在构造方法中进行姓名、学号、课程成 绩的赋值。Override有Object继承来的tostring方法已便 友好格式显示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方法, 在main中写一段测试代码,运行以保证目前所做工作的 正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到新 数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误信 息。(判断姓名是否相等使用string类的 equalsIgnoreCase方法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容的情 况,可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息2按学号查找3 按姓名查找 4 按学号删除 5 保存 6 读入 7 退出 请输入数字(1-7): 程序代码

基于java的学生信息管理系统设计与实现

基于j a v a的学生信息管理系统设计与实现 文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)

基于java的学生信息管理系统设计与实现 基于java的学生信息管理系统设计与实现摘要:利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。本设计就是一个为实现信息化管理而开发的信息管理系统,能够进行信息存储、查询、修改等能功。该系统由六个模块构成,包括学生管理系统的主界面模块、学生信息管理模块、课程信息管理模块、成绩信息管理模块、信息查询模块和数据库操作模块。通过这些模块的有机结合,能方便的对学生信息进行综合管理,从而实现了信息化管理的目的。由于本人的能力有限,设计过程中难免有不足之处,设计中的存在问题本人将在日后进一步修改,以便让程序的设计更加完善。? 关键词:oracle;?异常处理;关系模型 目录

1 引言 1.1背景及意义 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理无法比拟的优点。例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿命长、成本低等。利用计算机进行学生信息管理,不仅能够保证准确、无误、快速输出,而且还可以利用计算机对有关信息进行查询,检索迅速、查找方便、可靠性高、存储量大、保密性好。要科学地实现信息化管理,开发一个适合学校的,能够进行信息存储、查询、修改等功能的信息管理系统是十分重要的。这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、正规化管理,与世界接轨的重要条件。 本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。通过一个简化的学生信息管理系统,使学生信息管理工作系统化、规范化、自动化,从而达到提高学生信息管理效率的目的。本课题就是针对便于学生信息管理的问题而设计的一个管理系统。 1.2 实验技术选择 本课题设计主要运用的技术有两个:java项目开发和oracle对数据库的操作。这里主要介绍本课题为什么选用这两个开发技术: ⑴首先了解一下Java语言特点

学生信息管理系统程序设计

学生信息管理系统程序设计 1、软件开发目的 该软件主要是实现对学生基本信息进行系统化的管理,首先可以对学生基本信息进行录入和存取,其次可以浏览学生的相关信息,然后可以删除和插入学生的相关信息,还有就是可按学号或按学生姓名查询此学生的相关信息。由此来系统化管理学生基本信息,并达到简易操作的目的。 2、功能分析说明图 3、各项功能说明 (1)学生基本信息的录入和保存: 在链表中的适当位置插入一个学生信息节点,一次添加一条学生信息(添加内容包含学号、姓名、年龄),如果添加的学号已经在文件中存在,则不能添加到文件中去,应显示错误提示语;如果添加成功,则显示成功提示语。添加操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (2)显示学生信息: 此功能是显示一个学生信息节点中的信息,并在屏幕上显示出来。 (3)删除学生信息: 进入该项功能界面后,删除学生信息,一次删除一条学生信息。 (4)按学号查找学生信息: 按学号查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (5)按姓名查找学生信息: 按姓名查询学生信息,要求显示文件中与用户输入的学号相匹配的学生信息,要求显示学号、姓名、年龄等字段,如果文件中没有学生信息,则显示提示语。查询操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (6)修改学生信息 修改学生信息中的某一项信息,一次更新一条学生信息(更新内容包含学号、姓名、年龄等字段值),如果更新的学号在文件中不存在,则不能更新,应该显示错误提示语;如果更新成功,则显示成功提示语。更新操作完毕后,应该询问用户是否继续执行此操作。如果用户不继续,则退回到程序初始界面。 (7)退出系统,结束任务。 4、软件功能的验收标准 1.有较为美观简洁大方的菜单,能保证用户方便、直观、快捷的熟悉并使用软件的各项功能。 2.有严密正确的数据验证功能和数据处理功能,能够查询、插入、修改和删除学生信息。

基于JAVA学生信息管理系统

基于J A V A学生信息管理 系统 Prepared on 22 November 2020

江西科技师范大学毕业设计(论文) 学生姓名: 题目(中文):基于Java的学生信息管理系统 (外文):Student Information Management System based on Java 院(系):数学与计算机科学学院 专业:计算机科学与技术 年级:学号: 指导教师: 时间:2016 年 4 月 2016年 4月 20日 目录

基于Java的学生信息管理系统摘要:基于Java的学生信息管理系统分为五大模块:登录管理、学生基本信息管理、成绩管理、课程管理和班级管理。本文详细介绍了前台界面的操作及后台数据库的链接,根据模块制定各个功能的所需界面的实现方法。该系统具有十分清晰友好的界面,操作界面简洁,便于使用。 关键字:学生信息管理;MYSQL;JA VA 1.引言 项目开发背景和意义 随着科学技术的快速发展和不断提高,尤其是计算机科学技术的日渐普及,其功能的强大以及运行速度已经被人们深刻地了解。近几年来高校的办学模式多元化和学校规模的扩大,为了实现对学生信息进行科学管理,因此开发一个简单快速规范的平台。学生的信息管理是教务管理的一个至关重要的部分,传统的方法不仅费人力和时间,而且效率低。如学生发生班级调动,传统的方法需要人工及时更改信息,十分复杂,使得该学生信息不能合理地配置。而使用计算机技术对学生档案信息进行管理的优点具有便于查找、检索快速、统计科学、保密性强、管理规范、节约成本等优点。 国内外的研究现状 学生信息管理工作是各大高校必不可少的管理工作之一,在学校占据重要的地位,它涉及到学生、老师和管理员等多方面。由于各大高校学生人数日益增长,因此研发出一款具有操作灵活且人性化的管理系统成为了迫切需要。 从国外看来许多高校一般是由技术强大稳定的队伍来完成该系统程序的设计与研制,或者是本校的某个院系。在西方电子管理系统的概念早已被学生引入,他们可以通过网络浏览学校的管理系统网站,以及学校的学术信息等。可以查看个人信息、考试成绩和课程,这种方式大大地减轻了人力和时间。

学生信息管理系统

C++课程设计报告 一、课程设计题目:学生成绩管理系统 二、课程设计目的: 1.了解并掌握c++与算法的设计方法,具备初步的独立分析和设计能力; 2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; 3.提高综合运用所学的理论知识和方法独立分析和解决问题的能力; 4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所具备的科学工作方法和作风。 三、课程设计要求: 1.设计的题目要求达到一定的工作量(300行以上代码),并具有一定的深度 和 难度。 2. 编写出课程设计报告书,内容不少于10页(代码不算)。 四、需求分析: 用数组或链表数据结构完成一个学生成绩管理系统,此系统的具体功能要求如下: (1)学生信息录入功能 1)用户从键盘输入每个学生的信息:学号、姓名、性别、英语、数电、体育、毛概四门课成绩。 2)可插入一个或多个学生信息到当前编辑的班级数据中。 3)可删除一个或多个学生信息。 (2)文件保存功能 1)学生信息每一班存为一个数据文件,数据文件可在程序中打开、编辑和重新保存。 2)用户输入学生信息可随时保存数据文件。 (3)文件打开功能 1)程序只能对当前打开的数据文件进行编辑。 (4)查询功能 1)浏览所有学生信息; 2)按学号查询学生信息; 3)按姓名查询学生信息; 4) 查询任何一个学生总成绩和平均成绩;

(5)报表输出功能 1) 按学号输出一个班学生信息:学号、姓名、性别、英语、数电、体育、毛概和总成绩,到屏幕和文件。 2) 按总成绩输出从高到低输出学号、姓名信息。 注:以上功能以菜单形式供用户使用,并有一定的容错功能。 五.程序的功能设计 学生信息管理功能框图学生信息输入 学生信息显示 学生信息查询 学生信息删除 按排序顺序显示 按姓名查询 按序号查询 按姓名删除信息 按序号删除信息 插入学生信息插入新的学生信息 保存学生信息将学生信息保存在一个自定义文件夹中读取学生信息从自定义文件夹中读取学生信息

相关文档
最新文档