高校学生选课系统报告Word格式文档下载.docx
- 文档编号:469878
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:25
- 大小:830.63KB
高校学生选课系统报告Word格式文档下载.docx
《高校学生选课系统报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《高校学生选课系统报告Word格式文档下载.docx(25页珍藏版)》请在冰点文库上搜索。
2.1系统目标3
2.2系统功能结构3
2.3系统业务流程图3
3数据库设计5
3.1概念模型设计5
3.2物理数据模型6
3.3物理结构设计6
4详细设计及实现8
4.1开发环境及数据库连接8
4.2查询设计及实现8
4.3添加设计及实现9
4.4删除设计及实现10
4.5修改设计及实现10
4.6选课设计及实现11
4.7登录设计及实现12
5系统测试14
5.1界面测试14
5.2功能测试14
结论22
参考文献23
引言
计算机软件是指在计算机系统中的程序及其文档。
软件工程是研究如何有效地组织和管理软件开发的工程学。
软件工程的原则是围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。
软件工程的目标就是以最小的成本、最高的质量、最短的开发时间开发软件产品。
数据库作为存储数据的一种媒介,其重要性是不言而喻的。
数据库技术设计到许多概念,主要包括:
数据、数据处理、数据库、数据库管理系统以及数据库系统等。
数据库原理,我觉得主要要掌握SQL语句,关系代数、关系演算语言、数据可设计与保护、关系理论等。
要真正掌握好数据库,应该多做一些数据库设计相关的只是来了解整个设计流程。
学生选课系统的设计充分利用了工程化思想和数据库原理,为选课提供了一个良好的工具,系统基本实现了设计的要求,学生可以根据需要选择自己喜欢的课程,还可以对其进行修改,删除等操作。
开发此系统主要使用NETBEANS,JDK,SQLServer,powerdesigner等开发工具。
1需求分析
该系统主要用于高校学生选课,一个学生可以根据自己的学业规划选择相关课程,并且可以对已选课程进行查询、添加、修改、删除。
另外,一门课程可以被多个学生选择。
2概要设计
2.1系统目标
该系统主要要实现选课、查询、添加、修改、删除功能。
(1)选课功能:
学生根据自己每期须修学分的情况进行选课。
(2)查询功能:
能对学生所选科目进行查询,输入学生姓名或者学号后,其所选课程将列出来。
(3)添加功能:
能新增加学生和所选课程。
(4)修改功能:
如果学生选择科目有误,可以对其进行修改。
(5)删除功能:
如果学生对应的课程记录有问题,可以实现对其删除的功能。
2.2系统功能结构
高校学生选课系统主要功能包括选课、查询、修改、添加、删除等五大部分。
系统功能结构图如图2.1所示:
图2.1高校学生选课系统功能结构图
2.3系统业务流程图
高校学生选课系统的业务流程图如图2.2所示:
图2.2高校学生选课系统业务流程图
3数据库设计
3.1概念模型设计
经过对选课的数据进行分析,得到如下的实体:
(1)学生:
属性包括学号、姓名、性别、年级、密码。
(2)课程:
属性包括课程号、课程名、学分。
所设计的概念模型(E-R图)如下:
图3-1系统ER图
图3-2系统概念模型图
图3-3系统逻辑模型图
3.2物理数据模型
图3-4系统物理模型图
3.3物理结构设计
3.3.1基本表设计
1、学生表
表3.1学生表
字段名
字段描述
字段类型
备注
sno
主键
int
不为空
sname
varchar(50)
允许为空
sex
grade
pass
创建学生表的SQL语句如下:
/*==============================================================*/
/*Table:
student*/
createtablestudent(
snointnotnull,
snamevarchar(50)null,
sexvarchar(50)null,
gradeintnull,
passvarchar(50)null,
constraintPK_STUDENTprimarykeynonclustered(sno)
)
2、课程表
表3.2课程表
cno
cname
varchar(33)
xuefen
创建课程表的SQL语句如下:
course*/
createtablecourse(
cnointnotnull,
cnamevarchar(33)null,
xuefenintnull,
constraintPK_COURSEprimarykeynonclustered(cno)
3、选课表
表3.3选课表
外键
grades
创建选课表的SQL语句:
stu_course*/
createtablestu_course(
gradesintnull,
constraintPK_STU_COURSEprimarykeynonclustered(cno,sno)
4详细设计及实现
4.1开发环境及数据库连接
Windows7/windowsxp/
数据库连接:
Class.forName("
com.microsoft.sqlserver.jdbc.SQLServerDriver"
);
con=DriverManager.getConnection("
jdbc:
sqlserver:
//127.0.0.1:
1433;
DatabaseName=sc"
"
sa"
123"
4.2查询设计及实现
查询主要分为查看所有课程、查看已选课程、查看已选课程成绩以及查看个人信息。
其中查看所有课程和个人信息没有什么约束条件,点击即可查看;
查看已选课程需要输入自己的学号或姓名,查看选课成绩需要输入学号。
下面主要给出查看已选课程的关键代码:
if(jname.getText().equals("
"
)&
&
jxuehao.getText().equals("
))
JOptionPane.showMessageDialog(this,"
请输入学号或姓名!
"
提示"
JOptionPane.INFORMATION_MESSAGE);
elseif(jname.getText().equals("
{
if(!
jxuehao.getText().equals(s[0]))
学号有误!
警告"
JOptionPane.WARNING_MESSAGE);
else
chaxun_yixuan.setSQL("
selecto,ame,course.xuefenfromstu_course,coursewherestu_o=oandstu_course.sno='
+jxuehao.getText()+"
'
}
elseif(jxuehao.getText().equals("
{
jname.getText().equals(s[1]))
姓名有误!
selecto,ame,course.xuefenfromstudent,stu_course,coursewherestudent.sno=stu_course.snoandstu_o=oandstudent.sname='
+jname.getText()+"
{
jxuehao.getText().equals(s[0])||!
学号或姓名有误!
else
dataObjects=chaxun_yixuan.getRecord();
j5.setModel(newDefaultTableModel(dataObjects,CourseName));
j5.repaint();
4.3添加设计及实现
如果选课后发现有的课程未选上,可以点击添加,然后输入要新增的课程就可以选上此课程。
主要代码如下:
try
dbhelperinser=newdbhelper();
if(jadd.getSelectedItem().equals("
请选择你要添加课程的课程号!
else{
inser.setZiduan(3);
inser.setSQL("
insertintostu_coursevalues('
+jadd.getSelectedItem()+"
'
+s[0]+"
+0+"
)"
inser.modifyRecord();
恭喜你添加成功!
j5.repaint();
catch(Exceptione)
System.out.println(e);
4.4删除设计及实现
在查看已选课程的时候,如果发现有多选或选课有误,可以删除该门课程。
if(j5.getSelectedRow()<
=0)
请选中你要删除的课程!
del.setZiduan(3);
del.setSQL("
deletefromstu_coursewherecno='
+j5.getValueAt(j5.getSelectedRow(),0).toString()+"
del.modifyRecord();
JOptionPane.showMessageDialog(this,"
删除成功!
}
4.5修改设计及实现
如果选课记录有误,可以自行修改。
输入原课程号和要修改成的课程号即可修改。
dbhelperupd=newdbhelper();
if(jtihuan.getText().equals("
请输入相关修改信息!
upd.setZiduan(3);
if(jtihuan.getText().equals(jBox.getSelectedItem()))
不能修改成本身"
upd.setSQL("
updatestu_coursesetcno='
+jtihuan.getText()+"
wheresno='
+s[0]+"
andcno='
+jBox.getSelectedItem()+"
upd.modifyRecord();
修改成功!
JOptionPane.INFORMATION_MESSAGE);
jtihuan.setText(null);
4.6选课设计及实现
选课界面主要有两个表格,上面的表格显示可选课程,下面显示选课的情况。
点击上面表格的某一行,改课显示在下面表格中。
intm;
m=jTable1.getRowCount();
if(m<
=0)
JOptionPane.showMessageDialog(null,"
你可以先查看已选课程再进行选择!
elseif(m>
10)
你的选课已超过上限!
DefaultTableModeltableMode2=(DefaultTableModel)jTable1.getModel();
tableMode2.setRowCount(0);
huoqu.setTablename("
student"
name=huoqu.getTablename();
huoqu.setZiduan(5);
huoqu.setSQL("
select*from"
+name);
s=huoqu.getOneRecord(yonghuming.getText(),Jmima.getText());
dbhelpersc=newdbhelper();
sc.setZiduan(3);
for(intj=0;
j<
m;
j++)
for(intk=0;
k<
j5.getRowCount();
k++)
if(jTable1.getValueAt(j,0).equals(j5.getValueAt(k,0)))
选课有重复!
JOptionPane.ERROR_MESSAGE);
sc.setSQL("
+jTable1.getValueAt(j,0)+"
sc.modifyRecord();
恭喜你选课成功!
}
4.7登录设计及实现
登录主要是将输入的用户名和密码与数据库中数据进行匹配,匹配成功则登录,否则不能登录。
huoqu.setTablename("
if(s[0]!
=null)
denglu.setVisible(false);
xiugai.setVisible(false);
xuanke.setVisible(true);
chaxun.setVisible(false);
jMenu1.setVisible(true);
jMenu2.setVisible(true);
jMenu3.setVisible(true);
jMenu4.setVisible(true);
jMenu5.setVisible(true);
jMenu6.setVisible(true);
xuankebiao.setTablename("
course"
tableName=xuankebiao.getTablename();
xuankebiao.setZiduan(3);
xuankebiao.setSQL("
+tableName);
dataObjects=xuankebiao.getRecord();
xuanze.setModel(newDefaultTableModel(dataObjects,CourseName));
xuanze.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
huanying.setText(s[1]+"
:
欢迎进入选课系统!
您所输入的帐号或者密码不正确"
5系统测试
5.1界面测试
界面测试结果,界面整洁美观、简洁大方,界面风格一致,无错别字,控件按钮位置合适易于操作,输入框、下拉列表等显示正确。
5.2功能测试
1、登录测试
表5.1登录测试用例
用例编号
用户名
密码
预期结果
1
2014001(正确)
000000(正确)
成功登录系统的操作首页
2
0001(错误)
弹出提示对话框,不能进入系统
3
2014(错误)
4
(空)
5
用例2、3、4、5的实际结果,如图5-1所示:
图5-1登录测试1
用例1的实际结果,如图5-2所示:
图5-2登录测试2
2、查询已选课程测试
表5.2查询测试用例
学号
姓名
空
成功成功查询并显示结果
张三(正确)
2sd(错误)
弹出提示对话框,不能查询
324
用例1的实际结果,如图5-3所示:
图5-3查询已选课程测试1
用例2、3、4的实际结果,如图5-4所示:
图5-4查询已选课程测试2
用例5的实际结果如图5-5所示:
图5-5查询已选课程测试3
3、添加选课测试
为避免选课重复,学生需要先查询已选课程才能进行添加,在此之前,添加课程号的下拉框和按钮是不可用的,只有满足条件后后能使用。
添加成功后点击查看按钮即可查询相关信息。
图5-6添加测试1
图5-7添加测试2
4、删除选课测试
删除的内容是已选课程,每次只能删除一门课,需要学生自己选择。
选中要删除
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高校学生 选课 系统 报告