版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《面向对象程序设计》
课程设计报告
题目:学生一教师信息管理系统
目录
第一章课程设计项目简介........................................................1
第二章需求分析................................................................2
2.1系统设计与功能分析...................................................2
2.1.1本系统实现的大致功能.............................................2
第三章设计思路................................................................4
3.1设计数据库.............................................................4
3.2以类图说明基本设计思路...............................................5
3.3功能流程以及工作流程描述...............................................7
3.3.1登录窗口.......................................................7
3.3.2选择操作对象窗口...............................................7
3.3.3学生的操作窗口.................................................7
3.3.4管理员的操作窗口...............................................7
3.3.5教师的操作窗口.................................................9
第四章系统实现................................................................9
4.1登录界面模块............................................................9
4.2操作对象选择界面模块..................................................10
4.2.1学生操作对象选择界面模块.......................................10
4.2.2教师操作对象选择界面模块......................................11
4.2.2管理员操作对象选择界面模块.....................................12
4.3学生基本信息管理模块..................................................12
4.3.1管理员、教帅对学生基本信息管理的模块...........................12
4.3.2学生对学生基本信息管理的模块...................................16
4.4学生成绩信息管理模块..................................................17
4.4.1管理员、教师对学生成绩管理的模块...............................17
4.4.2学生对学生成绩查询的模块.......................................18
4.5教师基本信息管理模块..................................................19
4.5.1管理员对教师基本信息管理的模块.................................19
4.5.2教师对教师基本信息查询的模块...................................20
第五章使用说明...............................................................20
5.1开发、运行环境要求....................................................20
5.2程序运行..............................................................20
第六章设计总结...............................................................21
第七章参考文献...............................................................21
第一章课程设计项目简介
学生--教师信息管理系统是一个学校管理不可缺少的部分。一个功能齐全、简单易用
的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决
策者和管理者来说都至关重要。所以学生-教师信息管理系统应该能够为用户提供相关的
信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询
数据,这种管理方式存在着许多缺点,如:效率低、保密性差,人工的大量浪费;另外时间一
长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术
的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各
个领域并发挥着来越重要的作用。
作为计算机应用的一部分,使用计算机对学校的各类信息进行管理,具有手工管理所无法
比拟的优点,例如:检索迅速、查询方便、效率高、可靠性好、存储量大、保密性好、寿
命长、成本低等。这些优点能够极大地提高学校信息管理的效率,也是一个单位科学化、
正规化管理,与世界接轨的重要条件。
本文介绍了学生一教师信息管理系统的开发整个过程,阐述了系统分析、系统设计、数据
库设计和系统实施的全过程,具体模块实施采用了原型法和面向对象系统开发方法。并采
用JAVA作为开发工具,MYSQL作为后台数据库。本系统具有学生基本信息管理、学生成
绩信息管理、教师基本信息管理等功能。分成三大模块,每个模块都相互联系,但不相互
干扰,这符合了软件模块开发的思想。本系统完成了学生信息的查询、修改、增加、删除;
教师信息的查询、修改、增加、删除以及学生成绩信息的查询、修改、增加、删除等功能。
第二章需求分析
2.1系统设计与功能分析
学生一教师信息管理系统,可用于学校等机构的学生、教师基
本信息管理、学生成绩信息管理,查询,更新与维护,使用方便,易
用性强,图形界面清晰明了。该软件用java语言编写,用mysql数
据库作为后台的数据库进行信息的存储,用SQL语句完成学生、教
师基本信息的查询,修改,添加,删除的操作以及成绩的查询修改,
录入,删除等。用ODBC驱动实现前台Java与后台mysql数据库
的连接。Java语言跨平台性强,可以在windows,linux,ubuntu等系
统下使用,方便简单,安全性好。mysql数据库高效安全,两者结合
可相互利用各自的优势。
2.1.1本系统实现的大致功能
为保证本学生一教师管理系统的安全性,分别对不同的用户可在系统中进行的操作
作出了一定的权限设置。
用户登陆界面:该界面可以选择使用者的身份,“管理员,教师,学生”,不同的身份有不
同的操作界面和功能权限,用户名(本系统采用的是ID号)和密码输入正确即可登录。登录
的用户信息分别存储在mysql数据库的“slu(学生信息表)”,“man(管理员信息表)”,“ich(教
2
师信息表)”中,如果用户信息不存在则三张表中,将会无权利登录木管理系统。
学生管理界面:提供了学生基本信息的查询,学生成绩信息的查询,学生所拥有的操作权
限如图2-1;
图2-1学生管理模块用例图
教师管理界面:提供了对学生基本籍信息的查询、修改、添加、删除;学生成绩的查询、
修改、添加、删除等功能,教师所拥有的操作权限如图2-2;
图2-2教师管理模块用例图
管理员管理界面:拥有最高的权限,允许对学生、教师基本信息和学生成绩信息进行查询、
修改、添加、删除等功能,管理员所拥有的操作权限如图2-3;
3
ucJ
图2-3管理员管理模块用例图
第三章设计思路
3.1设计数据库
1.学生基本信类型备注
息表:
字段名
stuldchar(6)学号
stuNamevarchar(20)姓名
stuPwdChar(6)密码
stuScxchar(2)性另IJ
stuAgeInt(3)年龄
stuJgvarchar(20)籍贯
stuDeptvarchar(20)所在系
4
教师基本信类型备注
息表:
字段名
tchldchar(6)教师号
tchNamevarchar(20)姓名
tchPwdChar(6)密码
tchSexchar(2)性别
(chAgeInt⑶年龄
tchJgvarchar(20)籍贯
tchDeptvarchar(20)所在系
管理员基本类型备注
信息表:
字段名
manldchar(6)教师号
manNamevarchar(20)姓名
irianPwdChar(6)密码
学生成绩信类型备注
息表:
字段名
tchldchar(6)学号
tchNamevarchar(20)姓名
mathint(4)数学成绩
yuwenint(4)语文成绩
cnglishint(4)英语成绩
wuliint(4)物理成绩
huaxueint(4)化学成绩
3.2以类图说明基本设计思路
用户界面提供学生、教师、管理员等用户登录的操作;学生可以进行学生基本信息查
询、学生成绩查询的操作;管理员可以进行学生基本信息管理、教师基本信息管理、学生
成绩管理的操作;教师可以进行学生基本信息管理、教师基本信息查询、学生成绩管理的
操作,系统的类图如图3-1;
5
教师
-教师号:char
---lz-教师姓名:char
・密码:char
-性别:char成二首理
•年龄:int
/学号:char
-籍贯:char
•姓名:char
-系别:char
-数学成绩:int
♦学生基本信息查询0•语文成绩血
+学生基本信息修改0-英语成绩int
+学生基本信息添加0学生成装曾理-物埋成绩:int
最♦学生基本信息删除0二化学成娥四4
+学生成绩查询0
♦学生成娥查询0
♦学生成^修改0
+学生成绩修改0
+学生成演添加0
♦学生成^添加0
+学生成绩删除0
+学生成绩副除0
用户♦教师基本信息查询0
学生基本信息省理
-用尸名:char
-密码char
登录
-权限:boolean学生成责查询
教师基本言息管理
♦学生登录0
♦教师登录0置R告理员学生
+管理员登录0
#学号:char
•管理员号:char
f-姓名:char
-姓名:char
•密码:char
+学生基本信息查询0-性别:char
♦学生基本信息修改0____________N-年龄:Int
学生基本信息管连
+学生基本信息添加0-籍贯char
+学生基本信息删除0-系别:char
+学生成阳查询0
+学生基本信息查询
+学生成绩修改00
♦学生成虢受询0
♦学生成绩添加0
+学生成筑删除0
+教师基本信息查询0
*教师基本信息修改0
+教师基本信息添加0
♦数师基本信息删除0
学生成绩管理
图3-1系统类图
6
3.3功能流程以及工作流程描述
3.3.1登录窗口
使用用户,如学生、教师、管理员进行登录时,输入正确的用户名及密码,并选择所属类别
(学生、教师、管理员),如果输入的用户名及密码与该类别在数据库mysql中的用户名
(用户ID)及密码一致,我们就认为输入的用户名及密码是正确的,则可进行该类型用户
所能进行的所有操作。在设计所属类别选择时,使用了ButtonGroup组件,再在
ButtonGroup组件中加入了3个JRadioButton单选按钮,并分别为这3个JRadioButton
单选按钮设置事件监听,即选择相应类别时,在用户名或密码正确的情况下,就可进入进
行下一步操作。在登录页面还加入了两个JButton组件,即“登录”、“退出”,并为它们
设置了事件监听,在之前的操作:选择用户类别,用户名、密码输入正确的情况下,点击
“登录”,就可进入相应的窗口进行操作,如果用户名或密码输入错误,则出现错误信息对
话框:“用户名或者密码错误”;点击“退出”则退出系统。在此基础上使用了
getRootPane().setDefaultButtonO的方法设定回车所对应的按钮。
3.3.2选择操作对象窗口
登录成功后,出现的窗口是选择操作对象的窗口,即选择对学生这一对象的操作、对老师
这一对象的操作或者对学生成绩的操作等。系统针对不同的用户类别,设置的选择对象的
响应操作是不同的,这样就有效地管理了系统的权限问题:如学生只能对学生基本信息及
学生成绩信息进行查询操作;教师能对学生基本信息、学生成绩信息进行查询、修改、添
加、删除等各项操作以及对教师基本信息进行查询的操作;而管理员拥有最高权限,即能
进行各项的查询、修改、添加、删除等操作。
3.3.3学生的操作窗口
因为学生只能对学生基本信息及学生成绩信息进行查询操作,所以学生在选择操作对
象后,得到相应的学生基本信息查询窗口或学生成绩查询窗口只能进行查询或关闭窗口的
操作。在学生基本信息查询和学生成绩查询这两个窗口中,加入了JTable组件,用来显示
相应的信息,同时运用了
JScrollPaneyt,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
7
JScrollPaiw.HORIZONTAL_SCROLLBAR_AS_NEEDED)的方法使得显示信息时,能够
有一个滚动条;加入了两个JButton组件,即“查询”、“关闭”,在“查询”按钮前加入
了一个JTextField组件,学生进行查询操作时,在JTextField中填写所要查询的名字,然后
点击“查询”,或者回车(此处设定回车所对应的按钮为“查询”)调用可sql语句,就可
以得到所要查找的人的相应信息了;在点击“关闭”时,所对应的事件监听用了disposeO
的方法,对窗口进行关闭操作。
3.3.4管理员的操作窗口
管理员拥有最高权限,即能进行各项的查询、修改、添加、删除等操作,所以管理员
在选择操作对象后,得到相应的学生基本信息窗口、学生成绩窗口或教师基本信息窗口能
进行查询、修改、添加、删除等各项操作操作。在相应的窗口中加入了五个JButton组件,即
“查询”、“添加”、“修改”、“删除”、“关闭”。
对“查询”、“关闭”的点击事件与学生的操作窗口所用的方法相同。
点击“添力口”按钮,弹出相应的添加窗口,在添加窗口中包含有输入加入相应信息的
几个JTextField组件及三个JButlon组件,即“添加”、“重置”、“取消”按钮,点击“添加”
按钮,响应“添加”的点击事件,可招添加的内容加入到数据库中,并在相应JTable组件中
显示;点击“重置”按钮,响应“重置”的点击事件,可将之前输入但没有点击“添加”
的内容清空,然后用户就可以重新输入内容了;点击“取消”按钮响应“取消”的点击事
件,运用dispose。的方法,退出添加窗口。
8
选择某一记耒,点击“修改”按钮,弹出相应的修改窗口,在修改窗口中包含有输入要修改
的相应信息的几个JTextField组件及三个JButton组件,即“修改”、“重置”、“取消”按
钮,点击“修改”按钮,响应“修改”的点击事件,可将修改后的内容加入到数据库中,并
在相应JTable组件中显示,如果只点击“修改”按钮,而未选择某一记录,则出现错误信
息对话框:“请选择一行”;点击“重置”及“取消”按钮的事件监听方法和上述添加窗口
中“重置”及“取消”按钮的事件监听方法相同。
选择某一记录,点击“删除”按钮,可将选中的记录从数据库中删除,并在相应JTable组
件中显示的记录信息删除,如果只点击“删除”按钮,而未选择某一记录,则出现错误信息
对话框:”请选择一行”。
3.3.5教师的操作窗口
教师进行学生基本信息及学生成绩的查询、修改、添加、删除等操作,同时也能进行教师
基本信息的查询操作,所以教师在选择操作对象后,得到相应的学生基本信息窗口、学生
成绩窗口或教师基本信息窗口,在学生基本信息窗口、学生成绩窗口中使用的方法与管理
员的操作方法相同,所以是调用的是同一程序,在教师基本信息窗口中使用的方法与学生
操作中的方法相同。
第四章系统实现
该系统由5个模块构成,包括登录界面模块、操作对象选择界面模块、学生基本信息
管理模块、学生成绩信息管理模块、教师基本信息管理模块,以下分别加以叙述:
4.1登录界面模块
登录界面模块包括Management.java文件。Management类继承了JFrame类,实现了事件监听接口,
它有一个不带参数的构造函数Management。,用来生成Management实例,Management类将所有的功能
集中到面板中,生成按钮,通过按钮的响应函数调用其他模块的函数来实现学生一教师管理系统的各个
功能,以下是主界面的运行程序如图4-1,当用户名或密码输入错误时,则出现错误佶息对话框:“用户
名或者密码错误”,如图4-2;
9
图4」-1登录界面
消息
①用户名或者密码错误
确定
图4-1-2错误信息对话框
4.2操作对象选择界面模块
4.2.1学生操作对象选择界面模块
两个单选按钮:
JRadioButtonstul=newJRadioButton("学生”);
JRadioButtoncorse=newJRadioButlon("学生成绩)
对两个按钮的事件监听:
publicvoidactionPerfbrmed(ActionEventel){
if,(eLgetSource()==stul){
Studentta=newStudent();
)
elseif(el.getSource()==corse){
StudentCorseta=newStudentCorse();
)
elseif(el.getSource()==close){
♦.dispose。;
}
)
运行界面如图4-2-1:
io
图4-2-1学生操作对象选择界面
4.2.2教师操作对象选择界面模块
三个单选按钮:
JRadioButtonstul=newJRadioButton("学生)
JRadioButtontchl=newJRadioBulton("老!)巾");
JRadioButtoncorse=newJRadioButton("学生成绩");
对三个按钮的事件监听:
publicvoidactionPerformed(ActionEventel){
if(cl.gctSourcc()==stu1){
StudentManagementta=newStudentManagement();
)
elseif(el.getSource()==tch1){
Teacherssl=newTeacher();
I
elseif(el.getSource()==corse){
CorseManagementta=newCorseManagement();
)
elseif(el.getSource()==close){
々.dispose。;
}
)
运行界面如图422:
图4-2-2教师操作对象选择界面
11
4.2.2管理员操作对象选择界面模块
管理员操作对象选择界面模块使用的方法和教师操作对象选择模块的方法基本相同,
只是对各个单选按钮的事件监听事件所调用的java文件不同;运行界面与教师操作对象选
择界面完全相同;对三个按钮的事件监听:
publicvoidactionPerformed(ActionEventel){
if(el.getSource()==stu1){
SludeniManagementla=newStudeniManagemem();
)
elseif(el.getSource()==tch1){
TcachcrManagcmcntta=newTcachcrManagcmcnt();
)
elseif(el.getSource()==corse){
CorseManagementta=newCorseManagenient();
I
elseif(cl.gctSource()==closc){
^.dispose();
)
)
4.3学生基本信息管理模块
4.3.1管理员、教师对学生基本信息管理的模块
管理员、教师对学生基本信息管理的模块为StudcntManagcmcnt.java文件,而
StudcntManagcmcnt.javai^用了StuModeLjava学生模型文件、StudentUpdateDialog.java学生信息更新文
件、StuAddDialog.java学生信息添加文件。在StuModeLjava中连接数据库mysql:
PreparedStatementps=null;
Connectionct=null;
ResultSetrs=null;
Stringdriver="com.mysql.jdbc.Driver";
Stringurl="jdbc:mysql:〃localhost:3306/sludeni";
Stringuser="root";
Stringpassword="123";
在SluAddDialog.java中,事件监听事件:
publicvoidaclionPerformed(ActionEvente){
12
if(e.getSource()==jbl){
//希望添加
StuModeltemp=newStuModel();
Stringsq13="insertintostuvalues(?,
String[]paras3={jtfl.getText(),jtf2.getText(),jtf3.getText(),
jtf4.getText(),jtf5.getText(),jtf6.getText()Jtf7.getText()};
if(!temp.updateStudent(sql3,paras3)){
.1OptionPane47cMo.ss/7g:忝力LI失贝攵");
)
this.dispose();
}elseif(e.getSource()==jb2){
//希望重置
jtfl.setText("n);
jtf2.setText("");
jlfB.setTextC"1);
jtf4.setText("n);
jtf5.setText("");
jtf6.setTcxt("");
jlf7.setText("");
jtfl.requestFocus();
}elseif(e.getSource()==jb3){
//希望删除
this.dispose();
}
)
在SludentUpdaleDia1og.java中的事件监听部分程序:
publicvoidactionPerformed(ActionEvente){
〃用户更新
if(e.getSource()==jbl){
Stringsql3="updatestusetstuName=?,Pwd=?,stuScx=?,stuAge=?,
stuJg=?,stuDept=?wherestuId=?H;
String[]paras3={this.jtf2.getText(),jtf3.getText(),
this.jtf4.getText(),this.jtf5.getText(),
this.jtf6.getText(),this.jtf7.getText(),this.jtfl.getText());
StuModeltemp=newStuModel();
13
temp.updateStudent(sq13,paras3);
this.dispose();
StudentManagementta=newStudentManagement();
1
布SludentManagement.java中事件监听事件的程序:
publicvoidactionPerfonned(ActionEvente){
//TODOAuto-generatedmethodstub
if(e.gctSource()==jbl){
Stringname=this.jlf.getText().trim();
Stringsql="select*fromstuwherestuName=,"+name+,H";
if(name.trim(),equals(""))(
sm=newStuModel();
)else{
sm=newStuModel(sql);
)
jt.setModel(sm);
)
//当用户点击添加
elseif(e.getSourceQ==jb2){
StuAddDialog^ad=newStuAddDialog(this,"添力口学生",true);
//重新再获得新的数据模型
sm=newStuModel();
jt.setModel(sm);
}elseif(e.getSource()==jb3){
Systeni.6>w/.print("aaaa");
intrownum=this.jt.getSelectedRow();
if(rownum==-1){
JOptionPane.showMessageDialog(this,ni#选择一行");
return;
}
//显示修改对话框
newStudentUpdateDiak>g(this,"修改对话框”,true,sm,rownum);
}
//当用户点击删除
elseif(e.getSourcef)==jb4){
intrownum=this.jt.getSelectedRow();
14
if(rownum==-1){
JOptionPane.,/?。卬Message£)/Hag(this,”请选择一行");
return;
}
//得到学生的编号
Stringstuld=(String)sm.getValueAt(rownum,0);
StuModeltemp=newStuModel();
Stringsql="deletefromstuwherestiild=?n;
String[]paras={stuld};
if(!temp.updateStudent(sql,paras)){
JOptionPane.s/zo卬"册ij除失败");
)
sm=newStuModel。;
jt.setModel(sm);
}
elseif(e.getSource()==close){
this.dispose();
管理员、教师对学生基本信息管理的模块的几个界面如下:
图431管理员、教师对学生基本信息主界面
15
图4-3-2学生基本信息添加界面图4-3・3学生基本信息修改界面
图4-3-4添加失败时界面图4-3-4修改或删除未选中记录时界面
4.3.2学生对学生基本信息管理的模块
方法与管理员、教师对学生基木信息管理的模块相同,只是少了一些功能,主界面如
图4-3-4:
16
图4-3-4学生对学生基本信息管理本界而
4.4学生成绩信息管理模块
4.4.1管理员、教师对学生成绩管理的模块
调用方法与以上管理员、教师对学生基本信息管理的模块方法大致相同,只是所
运用的sql语句有所不同,管理员、教师对学生成绩管理的界面如图4-4-1:
图4-4-1管理员、教师对学生成绩管理的界面
17
图4-4-2学生成绩信息添加界面图4-4-3学生成绩信息修改界面
4.4.2学生对学生成绩查询的模块
方法与管理员、教师对学生成绩信息管理的模块相同,只是少了一些功能,主界面如
图4-4-4:
图4-4-4学生对学生成绩信息管理主界面
18
4.5教师基本信息管理模块
4.5.1管理员对教师基本信息管理的模块
调用方法与以上管理员、教师对学生基本信息管理的模块方法大致相同,只是所运用
的sql语句有所不同,管理员、教师对基本学生信息管理的界面如图4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年公开招聘专业人才备考题库及完整答案详解1套
- 2026年苏州绕城高速公路有限公司公开招聘备考题库及一套参考答案详解
- 2026年宁波卫生职业技术学院公开招聘高层次人才(教师)备考题库带答案详解
- 2026年南海区桂城街道文翰第三小学教师招聘备考题库完整参考答案详解
- 2026年苏州工业园区胜浦实验小学教学辅助人员招聘备考题库及一套参考答案详解
- 中国人民财产保险股份有限公司吉安市分公司2026届校园招聘备考题库及答案详解(易错题)
- 2026年泉州消防第一季度政府专职消防员招聘备考题库及参考答案详解一套
- 福建医科大学2025年安全保卫工作人员招聘备考题库(十四)及一套答案详解
- 消化内科核心疾病急性胃炎讲解课件
- 2026年全国妇联所属在京事业单位公开招聘备考题库及一套答案详解
- 【语文 北京版】2025年高考招生统一考试高考真题语文试卷(真题+答案)
- 【某污水处理工程中的高效沉淀池设计计算案例1600字】
- 广东司法警官职业学院《犯罪心理与社会工作》2023-2024学年第二学期期末试卷
- 卫生院疫苗管理制度
- 2025-2030中国网球行业市场发展趋势与前景展望战略研究报告
- QHDCTS0001-2024中国电信移动终端需求白皮书手持卫星终端分册(2024v1)
- SJG01-2010地基基础勘察设计规范
- 八年级下册英语2025电子版人教版单词表
- 精准教育转化罪犯
- 南大版一年级心理健康第8课《学习的乐趣》课件
- DB37-T4658.2-2023人工智能 应用场景分类 第2部分:装备制造-编制说明
评论
0/150
提交评论