学生档案管理系统.docx

上传人:b****7 文档编号:23382253 上传时间:2023-05-16 格式:DOCX 页数:22 大小:447.11KB
下载 相关 举报
学生档案管理系统.docx_第1页
第1页 / 共22页
学生档案管理系统.docx_第2页
第2页 / 共22页
学生档案管理系统.docx_第3页
第3页 / 共22页
学生档案管理系统.docx_第4页
第4页 / 共22页
学生档案管理系统.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

学生档案管理系统.docx

《学生档案管理系统.docx》由会员分享,可在线阅读,更多相关《学生档案管理系统.docx(22页珍藏版)》请在冰豆网上搜索。

学生档案管理系统.docx

学生档案管理系统

苏州科技学院电子信息与信息实验中心

面向对象课程设计 报告

--学生档案管理系统

专业年级

班 级

学 号

姓 名

成 绩

指导教师

2015年4月10日

目录

1课程设计任务概述1

1.1选择目的与意义1

1.2设计任务与要求1

1.3开发环境以及工具1

2系统需求分析2

2.1系统功能分析2

2.2用例图及用例说明3

2.2.1增加学生档案用例3

2.2.2查询学生档案用例4

2.2.3更改学生档案用例5

2.2.4删除学生档案用例7

3系统设计8

3.1系统类图8

3.2系统活动图9

3.3系统时序图9

3.3.1管理员登录时序图9

3.3.2增加学生档案时序图10

3.3.3查询学生档案时序图10

3.3.4更改学生档案时序图10

3.3.5删除学生档案时序图11

4系统实现11

4.1数据库连接模块11

4.1.1DBUtil.java关键代码11

4.2学生档案管理模块12

4.2.1增加学生档案12

4.2.2查找学生档案12

4.2.3更新学生档案13

4.2.4删除学生档案13

5系统测试14

5.1登陆测试14

5.2学生档案增加测试14

5.3学生档案查询测试15

5.4学生档案更改测试15

5.5学生档案删除测试15

6课程设计总结16

7参考文献17

1课程设计任务概述

1.1选择目的与意义

“面向对象技术”是计算机科学与技术专业的核心专业课,面向对象程序设计技术也是软件工程师的基本技能,“面向对象课程设计”的目的是理解和巩固面向对象程序设计的基本理论、原理和方法的重要的实践环节。

本课程设计综合应用学生所学知识,结合小型应用系统的设计,建立面向对象程序设计的概念,理解和巩固封装、类与对象、继承与多态、JAVA数据结构、多线程、IO、UI设计及UML等知识,为后续课程的学习打下良好的基础。

通过实现学生档案管理功能的实际编程了解基于Swing的图形用户界面开发和数据库操作原理,提高Swing和JDBC技术结合的综合运用能力。

1.2设计任务与要求

要求用面向对象的方法实现,且每个任务都采用文件存储数据,不能使用数据库。

每个题目均须具有以下功能:

1、用户管理,合法用户许可访问;

2、信息录入,包括记录的追加和插入;

3、信息删除;

4、信息修改;

5、信息排序和查询;

6、信息的保存和装载;

7、简单的帮助。

1.3开发环境以及工具

开发环境:

MyEclipseEnterpriseWorkbenchVersion:

2014

JDK1.7

系统运行环境:

WIN7旗舰版X64位

数据库平台:

MySQL5.0.22

2系统需求分析

2.1系统功能分析

本系统主要实现学生档案的管理,主要功能包括学生档案信息的添加、修改、查询和删除,及一些辅助项目的管理,如系统用户管理、院系管理和专业管理。

整个系统模块划分如图2-1所示:

图2-1系统模块划分

2.2用例图及用例说明

根据学生档案管理描述,画出学生档案管理系统整体用例图,

见图2-2:

图2-2学生档案管理系统用例图

由于院系管理与专业管理的用例与学生管理类似,以下给出学生管理的用例描述。

2.2.1增加学生档案用例

(1)增加学生档案用例描述

增加学生档案,是学生档案管理系统提供的一项基本服务。

在学生档案管理系统的建模过程中,将这一行为抽象为一个用例。

在不考虑软件的具体实现细节基础上,给出如下的用例描述:

UseCase名称

增加学生档案

执行者

管理员

前置条件

管理员通过系统验证后,成功登陆学生档案管理系统

事件流

1、输入学生学号;

2、输入学生姓名;

3、选择学生性别;

4、输入学生年龄;

5、选择学生所属院系;

6、选择学生所属专业;

7、点击“增加”提交。

后置条件

学生档案添加成功,提示“增加成功”,并清空增加界面。

(2)增加学生档案用例图(如图:

2-2-1)

图2-2-1增加学生档案用例图

2.2.2查询学生档案用例

(1)查询学生档案用例描述

查询学生档案,是学生档案管理系统提供的一项基本服务。

在学生档案管理系统的建模过程中,将这一行为抽象为一个用例。

在不考虑软件的具体实现细节基础上,给出如下的用例描述:

UseCase名称

查询学生档案

执行者

管理员

前置条件

管理员通过系统验证后,成功登陆学生档案管理系统

事件流

1、根据输入学生学号;

2、点击“查询”按钮;

后置条件

查询成功后,若查到符合条件学生信息,则返回在界面表格中,若查不到信息则不返回,清空查询各条件框中信息。

(2)查询学生档案用例图(如图:

2-2-2)

图2-2-2查询学生档案用例图

2.2.3更改学生档案用例

(1)更改学生档案用例描述

更改学生档案,是学生档案管理系统提供的一项基本服务。

在学生档案管理系统的建模过程中,将这一行为抽象为一个用例。

在不考虑软件的具体实现细节基础上,给出如下的用例描述:

UseCase名称

修改学生档案

执行者

管理员

前置条件

管理员通过系统验证后,成功登陆学生档案管理系统,并查询出要更改档案的学生信息

事件流

1、选中要更改学生的档案信息;

2、在更改信息框中更改需要更改的信息;

3、点击“修改”按钮。

后置条件

修改成功后,在数据库中更新修改学生的档案,并清空修改信息框中的信息。

(2)更改学生档案用例图(如图:

2-2-3)

图2-2-3更改学生档案用例图

2.2.4删除学生档案用例

(1)删除学生档案用例描述

删除学生档案,是学生档案管理系统提供的一项基本服务。

在学生档案管理系统的建模过程中,将这一行为抽象为一个用例。

在不考虑软件的具体实现细节基础上,给出如下的用例描述:

UseCase名称

删除学生档案

执行者

管理员

前置条件

管理员通过系统验证后,成功登陆学生档案管理系统,并查询出要更改档案的学生信息

事件流

1、选中要删除学生的信息;

2、点击“删除选中档案”按钮。

后置条件

学生档案删除成功,数据库中删除对应学生档案。

(2)删除学生档案用例图(如图:

2-2-3)

图2-2-3删除学生档案用例图

3系统设计

3.1系统类图

学生档案管理系统总类图,如图3-1所示:

图3-1学生档案管理系统类图

3.2系统活动图

学生档案管理系统活动图,如图3-2所示:

图3-2学生档案管理系统活动图

3.3系统时序图

3.3.1管理员登录时序图

管理员登录时序图,如图3-3-1所示:

图3-3-1系统登录时序图

3.3.2增加学生档案时序图

增加学生档案时序图,如图3-3-2所示:

图3-3-2增加学生档案时序图

3.3.3查询学生档案时序图

查询学生档案时序图,如图3-3-3所示:

图3-3-3查询学生档案时序图

3.3.4更改学生档案时序图

更改学生档案时序图,如图3-3-4所示:

图3-3-4更改学生档案时序图

3.3.5删除学生档案时序图

删除学生档案时序图,如图3-3-5所示:

图3-3-5删除学生档案时序图

4系统实现

4.1数据库连接模块

4.1.1DBUtil.java关键代码

publicclassDbUtil{

privateStringdbUserName="root";

privateStringdbPassword="";

privateStringdriverName="com.mysql.jdbc.Driver";

privateStringdbUrl="jdbc:

mysql:

//localhost:

3306/stuinfo";

publicConnectiongetConn()throwsException{

Class.forName(driverName);

Connectionconn=DriverManager.getConnection(dbUrl,dbUserName,dbPassword);

returnconn;

}

publicvoidcloseConn(Connectionconn,PreparedStatementpstmt)throwsSQLException{

if(pstmt!

=null){

pstmt.close();

if(conn!

=null){

conn.close();

}

}

}

}

4.2学生档案管理模块

4.2.1增加学生档案

publicintaddStu(Connectionconn,Studentstudent)throwsSQLException,

ParseException{

//TODOAuto-generatedmethodstub

Stringsql="insertintostuvalues(?

?

?

?

?

?

)";

PreparedStatementpstmt=conn.prepareStatement(sql);

pstmt.setInt(1,student.getId());

pstmt.setString(2,student.getName());

pstmt.setString(3,student.getSex());

pstmt.setInt(4,student.getYear());

pstmt.setString(5,student.getMajor());

pstmt.setString(6,student.getGrade());

returnpstmt.executeUpdate();

}

4.2.2查找学生档案

publicResultSetfindStu(Connectionconn,Studentstu)throwsSQLException{

//TODOAuto-generatedmethodstub

StringBuffersb=newStringBuffer("select*fromstustwherest.major="+"'"+stu.getMajor()+"'");

if(stu.getId()!

=0){

sb.append("andst.id="+stu.getId());}

if(stringUtil.isNotEmpty(stu.getName())){

sb.append("andst.namelike'%"+stu.getName()+"%'");}

if(stringUtil.isNotEmpty(stu.getSex())){

sb.append("andst.sexlike'%"+stu.getSex()+"%'");}

if(stu.getYear()!

=0){

sb.append("andst.year="+stu.getYear());}

if(stringUtil.isNotEmpty(stu.getGrade())){

sb.append("andst.gradelike'%"+stu.getGrade()+"%'");}

PreparedStatementpstmt=conn.prepareStatement(sb.toString());

returnpstmt.executeQuery();

}

4.2.3更新学生档案

publicintupdateStu(Connectionconn,Studentstudent)throwsException{

//TODOAuto-generatedmethodstub

Stringsql="UPDATEstuSETname=?

sex=?

year=?

major=?

grade=?

WHEREid=?

";

PreparedStatementpstmt=conn.prepareStatement(sql);

pstmt.setString(1,student.getName());

pstmt.setString(2,student.getSex());

pstmt.setInt(3,student.getYear());

pstmt.setString(4,student.getMajor());

pstmt.setString(5,student.getGrade());

pstmt.setInt(6,student.getId());

returnpstmt.executeUpdate();

}

4.2.4删除学生档案

publicintdeleteStu(Connectionconn,intstuId)throwsSQLException{

//TODOAuto-generatedmethodstub

Stringsql="deletefromstuwhereid=?

";

PreparedStatementpstmt=conn.prepareStatement(sql);

pstmt.setInt(1,stuId);

returnpstmt.executeUpdate();

}

5系统测试

5.1登陆测试

登录测试用例:

用例编号

输入内容

预期结果

实际结果

说明

账号

密码

1

admin

admin

登录主界面

成功登录主界面

管理员账号能正确登录

2

admin

123456

提示“用户名或密码错误”

提示“用户名或密码错误”

错误的密码无法登录系统

3

Dhx

admin

提示“用户名或密码错误”

提示“用户名或密码错误”

错误的账户无法登录系统

4

admin

(空)

提示“请输入密码”

提示“请输入密码”

密码为空不能登录

5

(空)

admin

提示“用户名不能为空”

提示“用户名不能为空”

用户名为空时不能登录

5.2学生档案增加测试

学生档案增加测试用例:

用例编号

操作步骤

预期结果

实际结果

说明

1

a)输入学号:

112001

b)输入姓名:

王二

c)选择性别:

d)输入年龄:

18

e)选择院系:

电子信息工程

f)选择专业:

电子Z1211

g)点击“增加”按钮

提“添加成功”

提示“添加成功”

正常输入学生档案信息

2

a)输入姓名:

王二

b)选择性别:

c)输入年龄:

18

d)选择院系:

电子信息工程

e)选择专业:

电子Z1211

f)点击“增加”按钮

提示“请输入学号”

提示“请输入学号”

不输入学号添加档案信息

3

a)输入学号:

112001

b)点击“增加”按钮

提示“请输入姓名”

提示请输入年龄

只输入学号添加学生档案信息

4

a)输入学号:

112001

d)输入年龄:

18

g)点击“增加”按钮

提示“请输入姓名”

提示“请输入姓名”

只输入学号和年龄添加档案信息

5

a)点击“增加”按钮

提示“请输入学号”

提示“请输入学号”

不输入学生任何信息

5.3学生档案查询测试

学生档案查询测试用例:

用例编号

操作步骤

预期结果

实际结果

说明

1

a)输入学号:

112004

b)点击“查询”按钮

正确显示查询信息

正确显示查询信息

按学号查询

2

a)点击“查询”按钮

正确显示查询信息

正确显示查询信息

列出所有学生

5.4学生档案更改测试

学生档案更改测试用例:

用例编号

操作步骤

预期结果

实际结果

说明

1

a)查询出要更改学生信息

b)选中该条信息

c)更改院系

d)更改专业

e)点击“修改”按钮

提示“更新成功”

提示“更新成功”

修改学生院系与专业

2

a)点击“修改”按钮

提示“请先选择”

提示“请先选择”

不选中学生档案更改信息

3

a)查询出要更改学生信息

b)选中该条信息

c)更改姓名

d)更改性别

e)点击“修改”按钮

提示“更新成功”

提示“更新成功”

修改学生姓名与性别

5.5学生档案删除测试

学生档案删除测试用例:

用例编号

操作步骤

预期结果

实际结果

说明

1

f)查询出要删除学生信息

g)选中该条信息

h)点击“删除选中档案”按钮

提示“删除成功”

提示“删除成功”

正常删除操作步骤

2

b)点击“删除选中档案”按钮

提示“请先选择”

提示“请先选择”

不选中档案直接删除

6课程设计总结

通过对面向对象课程的学习,我们初步掌握了通过编程实现学生档案管理系统的主要核心,实现了一个简单的学生档案管理系统。

本系统在目前的调试中,基本达到了当初的设计要求,设计上基本合理,功能基本完善,能够做到对学生档案信息的查询,删除,添加,修改等基本功能。

由于各种原因,我们设计的学生档案管理系统只完成了几个主要的功能实现,还存在着一些问题有待解决,系统设计的还不够精致同时也存在着很多的不足与缺陷,这还需要更我们进一步的完善。

这几周来我们投入巨大精力完成课程设计,收获颇多。

通过实现学生档案管理功能的实际编程了解了基于Swing的图形用户界面开发和数据库操作原理,提高了我们在Swing和JDBC技术结合方面的综合运用能力。

7参考文献

[1]耿祥义,张跃平.Java面向对象程序设计[M].北京:

清华大学出版社,2009

[2]孙家广等.软件工程——理论、方法与实践[M].北京:

高等教育出版社,2005.

[3]李春葆,曾平.数据库原理与应用.第二版.北京:

清华大学出版社,2007.

[4]GrantPalmer.Java程序员手册[M].第一版.北京:

清华大学出版社,2002.

[5]李敏波.Java高级编程[M].北京:

清华大学出版社,2006.

 

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

当前位置:首页 > PPT模板 > 其它模板

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

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