java学生信息管理系统Word下载.docx

上传人:b****5 文档编号:18072265 上传时间:2022-12-13 格式:DOCX 页数:19 大小:260.26KB
下载 相关 举报
java学生信息管理系统Word下载.docx_第1页
第1页 / 共19页
java学生信息管理系统Word下载.docx_第2页
第2页 / 共19页
java学生信息管理系统Word下载.docx_第3页
第3页 / 共19页
java学生信息管理系统Word下载.docx_第4页
第4页 / 共19页
java学生信息管理系统Word下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

java学生信息管理系统Word下载.docx

《java学生信息管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《java学生信息管理系统Word下载.docx(19页珍藏版)》请在冰豆网上搜索。

java学生信息管理系统Word下载.docx

java项目开发和MysqlL对数据库的操作。

这里主要介绍本课题为什么选用这两个开发技术:

⑴首先了解一下Java语言特点

Java是一种跨平台,适合于分布式计算环境的面向对象编程语言。

具体来说,它具有如下特性:

简单性、面向对象、分布式、解释型、可靠、安全、平台无关、可移植、高性能、多线程、动态性等。

⑵Access数据库的特点

●无范式要求,可根据实际系统需求构造数据库。

●采用标准的SQL结构化查询语言。

●具有字符界面和图形界面,易于开发。

综上所述,选择java作为开发语言,Mysql作为数据库开发工具是个不错的选择。

1.3课题实现技术的简要说明

本课题主要运用了java图形编程和oracle数据库的操作。

Java图形编程给用户提供了一个直观、易于与用户进行交互的图形界面。

在图形编程中,运用了大量的java.swing包中的类,之所以选择swing包中的类而不选java.awt包中的类,主要是swing包中的类能给用户提供更好的观感。

oracle数据库的操作这部分内容分成三部分来实现:

首先,编写对数据库操作的类,包括:

连接数据库、执行sql语句、关闭数据库连接等。

其次,编写一个用于对学生信息进行数据库操作的类,包括:

学生信息的增加、修改、删除和查询等。

最后,编写一个用于对课程相关信息进行数据库操作的类,包括:

对课程信息的增加、修改、删除、查询等等。

通过结合图形编程和数据库编程,从而基本上实现了学生信息管理的基本功能,由于本人技术上的不足,难免有些地方需要改进,这些存在的问题都将成为本人前进的动力,并在日后更加完善本课题的设计。

 

2系统需求分析

2.1功能需求分析

本课题根据学生信息管理综合分析,便出于方便管理考虑,将学生信息管理系统的功能总结起来,共需要实现以下几个方面功能:

①管理学生信息

管理所有学生的基本信息,对学生信息的操作包括添加、修改、删除等;

可以根据各种条件查询出需要的信息,比如修改,可以通过学生学号查询出学生的基本信息,然后通过对需要修改项进行修改并保存修改后的结果存入数据库的学生表中。

②管理课程信息

管理所有课程的基本信息,包括对课程信息的添加、修改、删除等操作;

可以根据各种条件查询出需要的信息,并对相应的信息进行操作。

比如修改和删除,可以通过学生的学号查询出学生的相应课程信息,对相应的课程进行修改、删除操作。

③学生选课与成绩

根据学生的学号进行选课,登记所选课程的成绩;

可以根据学号查询出选课信息与成绩。

通过以上功能的设计与实现,并实现学生信息管理系统的基本功能。

当然在实际的学生信息管理系统中,其功能要比本课题的多的多,也复杂的多,本课题仅简单的实现了一个学生管理系统的设计与实现的流程。

3学生信息管理系统设计

3.1数据模型分析与设计

数据库模型描述了在数据库中结构化和操纵数据的方法,模型的结构部分规定了数据如何被描述(例如树、表等);

模型的操纵部分规定了数据的添加、删除、显示、维护、打印、查找、选择、排序和更新等操作。

数据库模型的分类:

分层模型、关系模型、网络模型和对象模型。

本课题选择的关系模型,关系模型是目前最重要的一种数据模型。

本课题的关系数据模型的数据结构可分为三个表来表示:

学生信息表(student)、课程信息表(course)、学生选课表(sc);

学生信息表用于记录学生的基本信息,如表3-1;

课程信息表用于记录课程的基本信息,如表3-2;

学生选课表如下表3-3。

这三个表对应的E-R图分别是:

图3.1学生信息E-R图;

图3.2课程信息E-R图;

图3.3学生选课E-R图;

如下图。

表3-1学生信息表(student)

名称

字段名称

数据类型

主键

非空

学号

snum

char(10)

yes

姓名

sname

varchar2

no

性别

ssex

char

(2)

出生日期

sbirth

char(8)

入学年份

syear

char(4)

表3-2课程信息表(Course)

课程编号

cnum

课程名称

cname

授课老师

cteacher

表3-3学生选课表(SC)

成绩

grade

number(4,1)

3.2结构设计与结构功能图

3.2.1结构设计

根据对系统进行需求分析,本系统将分为4个模块:

●学生管理

管理学生基本信息,包括个人信息的添加、修改、删除以及选课信息的添加。

●课程管理

管理课程的基本信息,包括课程信息的添加、修改和删除。

●成绩管理

管理学生选课的成绩信息,包括成绩的登记与修改。

●信息查询

查询已经登记的信息,包括学生的基本信息、课程的基本信息与成绩信息。

3.2.2功能结构图

学生管理系统功能结构如图3.4所示。

4详细设计

该系统由6个模块构成,包括学生管理系统主界面模块、学生信息管理模块、课程信息管理模块、成绩信息管理模块、信息查询模块和数据操作模块。

下面分别加以叙述:

①学生管理系统主界面模块

学生管理系统主界面模块包括StuMS.java和StuMain.java两个文件。

StuMS是学生管理系统的主运行类,其中有运行整个程序的main方法,该文件生成了StuMain类的一个实例,从而生成了学生管理系统的界面,如图4.1所示。

StuMain类继承自JFrame类,实现了ActionListener接口,他有一个不带参数的构造方法StuMain(),用来生成StuMain的实例。

StuMain类将所有功能集中到菜单栏中,并通过调用其他模块来实现学生管理系统的各个功能。

importjavax.swing.UIManager;

importjava.awt.*;

/*学生管理系统运行主类*/

publicclassStuMS{图4.1学生管理系统主界面

booleanpackFrame=false;

/**

*构造函数

*/

publicStuMS(){

StuMainframe=newStuMain();

if(packFrame){

frame.pack();

}

else{

frame.validate();

//设置运行时窗口的位置��

DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();

DimensionframeSize=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);

}

publicstaticvoidmain(String[]args){

//设置运行风格

try{

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

catch(Exceptione){

e.printStackTrace();

newStuMS();

}

②学生信息管理模块

学生信息管理模块主要由StuInfo.java、AddStuInfo.java、EdiStuInfo.java、DelStuInfo.java、SelectCourse.java和StuInfoSearchSnum.java共计6个文件组成,其构成关系如图4.2所示。

学生信息管理模块的6个文件组成了主界面中的“学生管理”菜单的内容,其中包括增加、修改、删除和学生选课功能,如图4.3所示。

图4.3学生信息管理模块的运行界面

③课程信息管理模块

课程信息管理模块主要由CourseInfo.java、AddCourseInfo.java、EditCourseInfo.java、DelCourseInfo.java、CourseInfoSearchCnum.java这5个文件组成,其构成关系如图4.4所示。

课程信息管理模块中的5个类文件组成了主界面中“课程管理”菜单的内容,其中包括增加、修改和删除功能,如图4.5所示。

图4.5课程信息管理模块运行界面

④成绩信息管理模块

成绩信息管理模块主要由GradeInfo.java、AddGradeInfo.java、EditGradeInfo.java这3个文件组成,其构成关系如图4.6所示。

成绩信息管理模块中的3个类文件组成了主界面中的“成绩管理”菜单的内容,其中包括增加和修改功能,如图4.7所示。

图4.7成绩信息管理模块的运行界面

⑤信息查询模块

信息查询模块主要包括学生查询、课程查询和成绩查询3个部分。

信息查询的运行主截面如图4.8所示。

图4.8学生信息查询模块的运行界面

学生查询由StuSearchSnum.java、StuSearchSname.java和ResultStudent.java这3个文件组成,主要实现功能包括:

按学号查询、按学生姓名查询。

课程查询由CourseSearchCname.java、CourseSearchCteacher.java和ResultCourse.java着3个文件组成,主要实现功能包括:

按课程名称查询、按授课老师查询。

成绩查询由GrdSearchAllGrade和ResultGrade这2个文件组成,实现的功能是按照学生的学号查询该学生所有科目成绩

⑥数据库操作模块

数据库操作模块由Database.java、StuBean.java、CrsBean.java和csBean.java这4个文件组成,功能包括连接数据库、执行数据库操作(对学生信息、课程信息和成绩信息进行插入、修改、删除和读取)和关闭数据库连接。

连接数据库的主要代码如下:

//Database.java

importjava.sql.*;

/**

*连接数据库的类

publicclassDatabase{

privateStatementstmt=null;

ResultSetrs=null;

privateConnectionconn=null;

Stringsql;

Stringstrurl="

jdbc:

odbc:

student"

;

publicDatabase(){

*打开数据库连接

publicvoidOpenConn()throwsException{

try{

Class.forName("

sun.jdbc.odbc.JdbcOdbcDriver"

);

conn=DriverManager.getConnection(strurl);

catch(Exceptione){

System.err.println("

OpenConn:

"

+e.getMessage());

*执行sql语句,返回结果集rs

publicResultSetexecuteQuery(Stringsql){

stmt=null;

rs=null;

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

rs=stmt.executeQuery(sql);

catch(SQLExceptione){

executeQuery:

returnrs;

*执行sql语句

publicvoidexecuteUpdate(Stringsql){

stmt=null;

stmt.executeQuery(sql);

mit();

executeUpdate:

publicvoidcloseStmt(){

stmt.close();

closeStmt:

*关闭数据库连接

publicvoidcloseConn(){

conn.close();

catch(SQLExceptionex){

aq.closeConn:

+ex.getMessage());

/*转换编码*/

publicstaticStringtoGBK(Stringstr){

if(str==null)

str="

else

str=newString(str.getBytes("

ISO-8859-1"

),"

GBK"

catch(Exceptione){System.out.println(e);

returnstr;

5系统调试常见错误

1.NullPointerException异常

一般是对一个为NULL值的变量进行操作引起的。

为避免这种异常,最好在对变量操作之前检查,看它是否为NULL值。

2.SQLException异常

一般是由于SQL语句不正确引起的。

为避免这种异常,最好在使用SQL语句的程序中捕获此SQL异常。

3.NumberFormatException异常

这是由于数字的格式错误而出现的例外。

为了避免出现此类错误,一般必须保证数据格式输入正确。

4.数据库连接垃圾回收

在实际的开发应用中,通常出现某一个对象未能关闭的情况,为了防止这种情况的发生,可以在有关对数据库操作的Java类文件中增加自动回收函数,在JVM自动地回收对象时,取出使用的连接对象,判断是否关闭,如果没有关闭则关掉。

代码如下所示:

protectedvoidfinalize()

{

try

{

If(getConn()!

=null&

&

!

getConn().isClosed())

rs.cloes();

stm.close();

conn.close();

}catch(SQLExceptione){}

总结

经过这次课题的设计并实现,尽管会遇到很多难题,但是让我更加受益的是在这次课题中得到的经验、心得和锻炼。

本系统实现了信息化管理学生信息,能够进行信息存储、查询、修改等能功。

该系统由六个模块构成,包括学生管理系统的主界面模块、学生信息管理模块、课程信息管理模块、成绩信息管理模块、信息查询模块和数据库操作模块。

通过这些模块的有机结合,能方便的对学生信息进行综合管理,从而实现了信息化管理的目的。

由于本人的能力有限,设计过程中难免有不足之处,例如:

没有登陆界面、没有区分用户身份及密码服务、数据库设计相对简单等。

这些设计中的存在问题,本人将在日后进一步修改,以便让程序的设计更加完善。

参考文献

[1]萨师煊、王珊.数据库系统概论(第三版)[M].北京:

高等教育出版社

[2]张广彬、梦红蕊、张永宝编著.Java课程设计案例精编.北京:

清华大学出版社

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1