面向对象学生信息管理文档格式.docx
《面向对象学生信息管理文档格式.docx》由会员分享,可在线阅读,更多相关《面向对象学生信息管理文档格式.docx(36页珍藏版)》请在冰点文库上搜索。
![面向对象学生信息管理文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/7/bbfa9e39-ec2d-4feb-a47c-069882745ce6/bbfa9e39-ec2d-4feb-a47c-069882745ce61.gif)
统计表
图2-1顶层数据流图
学生情况
学生信息管理学生信息管理要求
成绩管理要求成绩表
课程管理
查询要求
课程管理要求
课程
图2-20层数据流图
二、1层数据流图(图2-3至图2-8)
2.2新生管理
新生数据处理结果
2.3班级管理
新生数据处理要求学生信息
学生信息管理要求班级名称及修改要求
2.1要求类型处理
2.4添加学生
添加要求及学生数据
当前时钟
数据删除单
2.5删除学生
备份数据单
2.6信息备份
图2-31层数据流图(a)
3.4成绩备份
班级及成绩数据
成绩管理要求班级名称成绩表
备份数据及班级信息
图2-41层数据流图(b)
三、学生信息管理模块分层数据流图(图2-9至图2-15)
2.2.2新生导入
2.2.3分班
新生数据
2.2.1要求类型处理
分班名单
2.2.4设置学号
新生数据处理要求新生数据及班数
起始学号及班级名称
图2-9新生处理
2.2.2.1检查记录有效性
新生记录
2.2.2.3逐行
读取记录
有效记录
2.2.2.2启动EXCEL调整
新生记录无效记录格式
成绩记录总分记录学生表
2.2.3.2按报考专业、成绩及男女生比例分班
2.2.3.1统计新生数据
分班名单男、女生人数
专业
班数
成绩表学生表
学生表
2.2.4.2按总分降序设置学号
2.2.4.1查询
相关记录
班级名称指定班级学生名单
起始学号
总图2-10新生数据导入、分班及设置学号
2.3..2修改
学生记录
2.3.1查询
班级名称指定班级学生记录学生信息
记录为空
修改要求
图2-11班级管理
2.4.2单个
添加学生
2.4.1要求
类型处理
单个学生数据
添加要求
2.4.3成批
成批学生数据
图2-12添加学生
总分表学生表
2.4.2.1数
据录入
成绩表
图2-13单个添加学生
成绩表学生记录
2.4.3.3逐行读取记录
2.4.3.1检查数据格式
有效格式记录
无效格式总分表
2.4.3.2启动EXCEL调整
学生记录
图2-13成批添加学生数据
学生表备份表
2.6.2数
据备份
2.6.1查询备份数据
备份数据单备份数据
图2-14数据备份
成绩表总分表
2.5.2删除指定范围数据
起止学号
2.5.3删除指定班级数据
2.5.1确认数据类型
数据删除单班级名称
2.5.4删除所有学生数据
所有学生数据
成绩表总分表
图2-15删除学生数据
四、成绩管理模块分层数据流图:
(图2-16至2-18)
课程表
3.2.2成
绩录入
3.2.1查询学生及课程信息
班级名称学生与课程数据
成绩数据
学生表成图2-16成绩录入
3.3.2计算总分及名次
3.3.1查询成绩数据
班级名称成绩数据成绩信息
总分表
图2-17总分计算
备份班级名称
3.4.2数
3.4.1查询成绩数据
备份数据单备份数据
成绩表成绩备份表
图2-18成绩备份
七、查询模块分层数据流图:
(图2-24至图2-26)
总分表成绩表
6.2.2查
询处理
6.2.1要求加工
学生信息查询要求查询规则查询结果
图2-24学生信息查询
3.数据字典
一.数据流条目:
(1)学生信息管理模块:
学生信息管理要求=[新生数据处理要求|班级数据管理要求|添加数据要求|数据删除要求|数据备份要求]
新生数据处理要求=[新生数据|班级数目|起始学号|班级名称|专业]
班级数据管理要求=[班级名称|修改要求]
添加数据要求=[单个学生数据单|成批数据单]
数据删除要求=[起止学号|班级名称|所有学生数据]
数据备份要求=[班级名称|学期数]
新生数据=姓名+性别+出生日期+家庭住址+原毕业学校+政治面貌+入学总分
起始学号={数字}15
班级名称=[会计04
(1)|会计04
(2)|会计04(3)|计算机软件04
(1)|会计03
(1)|会计03
(2)|会计03(3)|计算机软件03
(1)|会计02
(1)|会计02
(2)|会计02(3)|计算机软件02
(1)|网络技术03
(1)|网络技术04
(1)|机电03
(1)|机电02
(1)|机电04
(1)|网络技术02
(1)|网络技术02
(1)]
修改要求=姓名+性别+出生日期+家庭住址+原毕业学校+政治面貌+入学总分+专业+班级+是否住宿
单个学生数据单=姓名+性别+出生日期+家庭住址+原毕业学校+政治面貌+入学总分+班级+是否住宿
成批数据单=姓名+性别+出生日期+家庭住址+原毕业学校+政治面貌+入学总分+班级+是否住宿
性别=[男|女]
政治面貌=[团员|非团员]
是否住宿=[住宿|通学]
(2)成绩管理模块:
成绩管理要求=[成绩录入要求|总分计算要求|成绩备份要求]
成绩录入要求=班级名称+成绩数据
总分计算要求=班级名称+成绩数据
成绩备份要求=班级名称+学期数
成绩数据=姓名+课程名称+分数
成绩表=学号+姓名+期中成绩总分+期末成绩总分+期中名次+期末名次
(3)课程信息管理模块:
课程管理要求=[课程表维护要求|教师课程表维护要求|排课要求]
课程表维护要求=课程名称+年级+专业
教师课程表维护要求=教师姓名+任教班级+课程名称+周课时数
年级=[一年级|二年级|三年级]
任教班级=[会计04
(1)|会计04
(2)|会计04(3)|计算机软件04
(1)|会计03
(1)|会计03
(2)|会计03(3)|计算机软件03
(1)|会计02
(1)|会计02
(2)|会计02(3)|计算机软件02
(1)|网络技术03
(1)|网络技术04
(1)|机电03
(1)|机电02
(1)|机电04
(1)|网络技术02
(1)|网络技术02
(1)]
(4)查询模块:
查询要求=[查询条件]
查询结果=[学生信息统计表|学生成绩统计表|学生总分名次统计表|教师信息统计表|备份信息统计表]
1)二.数据项:
表2.1.1数据项
数据项名称
数据项含义说明
别名
数据类型
长度
取值范围
学号
为学生设置的代号
无
整型
4
a000-x999
教师名称
字符型
100
中、外文
班级
班级名
中文
专业
专业名
学费
学费多少
出生日期
入学时间
课程
课程名
三、数据库实现
1.年级信息表:
年级数,年级编号,班级编号,班级名称,班级数,
表2.1.3年级信息表
列名
数据类型大小
允许空
Gradenameber
Char(20)
否
GradeNumbers
是
Classnumber
Classname
Char(8)
2.学籍信息表:
姓名,学号,班级,性别,成绩,民族,籍贯,专业
表2.1.4学籍信息表
Number
Name
Sex
National
Native
Class
Char(50)
Prefessional
4、程序设计
学籍信息查询
5、程序实现
主界面部分源代码:
publicmainFrame(){
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try{
jbInit();
}
catch(Exceptione){
e.printStackTrace();
//Componentinitialization
privatevoidjbInit()throwsException{
contentPane=(JPanel)this.getContentPane();
contentPane.setLayout(null);
//this.setSize(newDimension(800,600));
this.setResizable(false);
this.setTitle("
学生管理系统"
);
jMenuFile.setFont(newjava.awt.Font("
Dialog"
0,15));
jMenuFile.setForeground(Color.black);
jMenuFile.setText("
系统"
jMenuHelp.setFont(newjava.awt.Font("
jMenuHelp.setText("
帮助"
jMenuHelpAbout.setFont(newjava.awt.Font("
jMenuHelpAbout.setText("
关于"
jMenuHelpAbout.addActionListener(newmainFrame_jMenuHelpAbout_ActionAdapter(this));
adduser.setFont(newjava.awt.Font("
adduser.setText("
添加用户"
adduser.addActionListener(newmainFrame_adduser_actionAdapter(this));
xjgl.setFont(newjava.awt.Font("
xjgl.setText("
学籍管理"
xjgl.addActionListener(newmainFrame_xjgl_actionAdapter(this));
bjgl.setFont(newjava.awt.Font("
bjgl.setText("
班级管理"
kcsz.setFont(newjava.awt.Font("
kcsz.setText("
课程设置"
cjgl.setFont(newjava.awt.Font("
cjgl.setText("
成绩管理"
tjcj.setFont(newjava.awt.Font("
tjcj.setText("
添加成绩信息"
tjcj.addActionListener(newmainFrame_tjcj_actionAdapter(this));
tjxj.setFont(newjava.awt.Font("
tjxj.setForeground(Color.black);
tjxj.setText("
添加学籍信息"
tjxj.addActionListener(newmainFrame_tjxj_actionAdapter(this));
//jMenuItem9.addActionListener(newmainFrame_jMenuItem9_actionAdapter(this));
xgxj.setFont(newjava.awt.Font("
xgxj.setText("
修改学籍信息"
xgxj.addActionListener(newmainFrame_xgxj_actionAdapter(this));
cxxj.setFont(newjava.awt.Font("
cxxj.setText("
查询学籍信息"
cxxj.addActionListener(newmainFrame_cxxj_actionAdapter(this));
//jMenuItem3.addActionListener(newmainFrame_jMenuItem3_actionAdapter(this));
tjbj.setFont(newjava.awt.Font("
tjbj.setText("
添加班级信息"
tjbj.addActionListener(newmainFrame_tjbj_actionAdapter(this));
xgbj.setFont(newjava.awt.Font("
xgbj.setText("
修改班级信息"
xgbj.addActionListener(newmainFrame_xgbj_actionAdapter(this));
tjkc.setFont(newjava.awt.Font("
tjkc.setText("
添加课程信息"
tjkc.addActionListener(newmainFrame_tjkc_actionAdapter(this));
xgkc.setFont(newjava.awt.Font("
xgkc.setText("
修改课程信息"
xgkc.addActionListener(newmainFrame_xgkc_actionAdapter(this));
sznj.setFont(newjava.awt.Font("
sznj.setText("
设置年级课程"
sznj.addActionListener(newmainFrame_sznj_actionAdapter(this));
jLabel1.setText("
"
jLabel1.setBounds(newRectangle(1,0,800,603));
xgcj.setFont(newjava.awt.Font("
xgcj.setText("
修改成绩信息"
xgcj.addActionListener(newmainFrame_xgcj_actionAdapter(this));
cxcj.setFont(newjava.awt.Font("
cxcj.setText("
查询成绩信息"
cxcj.addActionListener(newmainFrame_cxcj_actionAdapter(this));
exit.setFont(newjava.awt.Font("
exit.setText("
退出"
exit.addActionListener(newmainFrame_exit_actionAdapter(this));
exit.addMouseListener(newmainFrame_exit_mouseAdapter(this));
jMenuItem1.setFont(newjava.awt.Font("
jMenuItem1.setText("
修该密码"
jMenuItem1.addActionListener(newmainFrame_jMenuItem1_actionAdapter(this));
llyh.setFont(newjava.awt.Font("
llyh.setText("
浏览用户"
llyh.addActionListener(newmainFrame_llyh_actionAdapter(this));
login.setFont(newjava.awt.Font("
login.setText("
用户登录"
login.addActionListener(newmainFrame_login_actionAdapter(this));
ghbj.setFont(new
……
catch(Exceptione1){
e1.printStackTrace();
publicstaticvoidmain(Stringargs[]){
mainFramemain=newmainFrame();
publicvoidjMenuFileExit_actionPerformed(ActionEvente){
System.exit(0);
Loglog=newLog();
log.addLog("
\r\r"
username+"
退出了系统!
log.closeStream();
//Help|Aboutactionperformed
publicvoidjMenuHelpAbout_actionPerformed(ActionEvente){
newabout();
//Overriddensowecanexitwhenwindowisclosed
protectedvoidprocessWindowEvent(WindowEvente){
super.processWindowEvent(e);
if(e.getID()==WindowEvent.WINDOW_CLOSING){
jMenuFileExit_actionPerformed(null);
voidadduser_actionPerformed(ActionEvente){
newadduser();
浏览了添加用户模块!
voidxgmm_actionPerformed(ActionEvente){
newxiugaimima();
浏览了修改密码模块!
voidtjbj_actionPerformed(ActionEvente){
newaddxj();
浏览了添加学籍模块"
voidexit_actionPerformed(ActionEvente){
退出了系统"
voidxgbj_actionPerformed(ActionEvente){
newxgbj();
voidxjgl_actionPerformed(ActionEvente){
voidlogin_actionPerformed(ActionEvente){
username=JOptionPane.showInputDialog(this,"
请输入用户名"
Stringpwd=JOptionPane.showInputDialog(this,"
请输入密码"
if(!
(username==null&
&
pwd==null)){
try{//连接数据库,验证用户
Class.forName("
sun.jdbc.odbc.JdbcOdbcDriver"
Connectioncon=DriverManager.getConnection(
"
j