大学课程在线考试系统的设计与实现本科课程设计文档格式.docx
- 文档编号:5836034
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:55
- 大小:228.88KB
大学课程在线考试系统的设计与实现本科课程设计文档格式.docx
《大学课程在线考试系统的设计与实现本科课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《大学课程在线考试系统的设计与实现本科课程设计文档格式.docx(55页珍藏版)》请在冰点文库上搜索。
在美国,EJB+Servlet+JSP几乎成了电子商务的开发标准,而在我国也正逐渐兴起,不少网站都采用JSP技术。
1.3相关知识介绍
该在线考试系统主要采用Microsoft.netFramework、JSP、SQLServer数据库、MyEclipse7.5、DreamweaverCS、Tomcat6.0等技术和工具,整体设计遵循软件工程的方法,经过需求分析、总体设计、文档和代码的编制、模块测试和系统实现几个阶段.
1.3.1JSP、JavaBean、ervlet、JDBC的概述
◆JSP的概述:
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库,重新定向网页以及发送E-mail等,这就是建立动态网站所需要的功能。
所有程序操作都在服务器端执行,网络上传给客户端仅仅是结果,对客户浏览器的要求最低。
在Java的基础上开发的JSP实现了动态页面与静态页面的分离,脱离了硬件平台的束缚以及编译后运行等方式,大大提高了其执行效率而逐渐成为了Internet上的主流开发工具。
在美国,EJB+Servlt+JSP几乎成为了电子商务的开发标准,而在我国也正逐渐兴起,不少网站都采用了JSP技术。
◆JavaBean的概述:
JavaBean是一种JAVA语言写成的可重用组件。
为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器。
JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露成员属性。
众所周知,属性名称符合这种模式,其他Java类可以通过自身机制发现和操作这些JavaBean属性。
用户可以使用JavaBean将功能、处理、值、数据库访问和其他任何可以用java代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、Servlet、其他JavaBean、applet程序或者应用来使用这些对象。
用户可以认为JavaBean提供了一种随时随地的复制和粘贴的功能,而不用关心任何改变。
◆Servlet的概述:
Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。
它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。
Servlet是位于Web服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。
■Servlet的工作模式
1.客户端发送请求至服务器
2.服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容并将其传给服务器
3.服务器将响应返回客户端
4.JDBC是通用的SQLServer(结构化查询语言)数据库存取框架,带有简单且功能强大的应用程序接口(API)。
利用JDBCAPI,Java开发人员可以在单一的标准化功能库中编码,生成独立于数据库管理系统(DBMS)的Java应用系统。
兼容JDBC的应用程序可利用JDBC驱动器模块,反过来与后端数据源通信。
这些元件化的JDBC驱动器可换入换出,以适应不同的数据库后端设备。
第二章系统的分析与设计
2.1需求分析
在线考试系统主要包括自动出卷,在线答题,在线批改和题库等功能。
基本上包括了在线考试系统应该聚有的基本功能,。
根据在线考试系统的基本需求,系统需要完成以为的具体任务。
(1)自动出卷:
一个完整的在线考试系统首先必须具有能够满足用户需要的试卷,并且针对不同的用户要有不同的试卷,自动出卷模块就能够满足用户的这个需求,可以由系统管路员对试卷格式进行设置,然后由系统自动从题库中选择题目生成试卷。
(2)在线答题:
试卷生成以后,用户能够在系统中选择一份试卷进行答题。
(3)在线批改:
用户答题完成以后,把试卷提交给系统,系统能够在线批改,并及时的把结果返回给用户。
(4)题库:
题库是生成试卷的基础,把所有收集到的题目分类存入题库中,生成试卷时随机的从题库中取出题目,组合成一张试卷。
图1.1在线考试用例图
2.2总体设计
2.2.1UML业务逻辑图
在线考试系统主要的操作:
图2.1在线考试系统逻辑图
2.2.2系统结构
表2.2系统结构表
出卷模块
考试模块
批改模块
Chujuan.jsp
Chujuan1.jsp
Shijuanbianhao.jsp
Kaoshi.jsp
Xuanzeti.jsp
Xuanzeti_view.jsp
Panduanti.jsp
Kaosh1.jsp
2.3功能设计
根据系统的需求分析,明确系统的功能主要包括以为4个部分。
(1)出卷,该模块实现试卷的生成功能。
鉴于主观题的主观性,目前无法实现系统自动判卷,所以本系统只作客观题部分。
一般情况下,单选题往往在四个供选的答案A、B、C、D中选择唯一正确的答案;
(2)在线考试。
该模块是用户考试的窗口,用户在此部分进行答题,并提交。
(3)在线批改。
该模块实现答题正误的判断和对试卷进行评分的功能。
(4)题库。
系统用该模块来存储考试试卷,以备出卷时调用。
第三章数据库设计
依据系统分析,数据库主要由以下几张表组成。
◆试卷信息表(shijuan).表名为shijuan,存放试卷题目的信息。
表3.1试卷信息表
字段
说明
类型
备注
Shijuanbiaohao
试卷编号
int
timu
题目
varchar(800)
题目内容
fenzhi
分值
题目的分值
timuleixing
题型
varchar10
不可为空
id
题目的ID
外键
kaoshishijuan
考试时间
单位:
分
创建试卷信息表的代码:
CREATETABLE[shijuan](
[shijuanbiaohao][int]NULL,
[timu][varchar](800)COLLATEchinese_PRC_CI_ASNULL,
[fenzhi][int]NULL,
[timuleixing][varchar](10)COLLATEchinese_PRC_CI_ASNULL,
[id][varchar](10)COLLATEchinese_PRC_CI_ASNULL,
[kaoshishijuan][int]NULL
)
◆选择题题库信息表(xuanzeti).表名为xuanzeti,存放选择题题库信息。
表3.2选择题题库信息表
题目id
主键
timn
daan
正确答案
varchar(200)
zhang
章节
题目所属章节
a
A选项
varchar(50)
b
B选项
varchar(50)
c
C选项
d
D选项
nandu
难度系数
创建选择题题库信息表的代码:
CREATETABLE[xuanzeti](
[id][int]NOTNULL,
[tigan][varchar](800)COLLATEchinese_PRC_CI_ASNOTNULL,
[daan][varchar](200)COLLATEchinese_PRC_CI_ASNOTNULL,
[zhang][int]NOTNULL,
[a][varchar](50)COLLATEchinese_PRC_CI_AS_NOTNULL,
[b][varchar](50)COLLATEchinese_PRC_CI_AS_NOTNULL,
[c][varchar](50)COLLATEchinese_PRC_CI_AS_NOTNULL,
[d][varchar](50)COLLATEchinese_PRC_CI_AS_NOTNULL,
[nandu][int]NULL,
CONSTRAINT[pk_xunazeti]PRIMARYKEYCLUSTERED
(
[id]
)ON[PRIMARY]
◆判断题题库信息表(panduanti).表名为panduanti,存放判断题题库信息。
表3.3判断题题库信息表
Int
创建判断题题库信息表的代码:
CREATETABLE[panduanti](
[tigan][varchar](800)COLLATEchinese_PRC_CI_AS_NOTNULL,
[daan][varchar](200)COLLATEchinese_PRC_CI_AS_NOTNULL,
[zhang][int]NULL,
CONSTRAINT[pk_panduanti]PRIMARYKEYCLUSTERED
◆主观题题库信息表(zhuguanti).表名为zhuguanti,存放主观题题库信息。
表3.4主观题题库信息表
创建主观题题库信息表的代码:
CREATETABLE[panduanti](
CONSTRAINT[pk_zhuguantiti]PRIMARYKEYCLUSTERED
◆用户考试信息表(students_xuanze)。
表名为students_xuanze,存放用户考试信息。
表3.5用户考试信息表
用户ID
uid
用户名
varchar(10)
rightcount
正确题数
dayntime
varchar(30)
创建用户考试信息表的代码:
CREATETABLE[studentsxuanze](
[id][int]IDENTITY(1,1)NOTNULL,
[uid][varchar](10)COLLATEchinesePRCCIASNULL,
[rightcount][int]NULL,
[dayntime][varchar](30)COLLATEchinese_PRC_CI_ASNULL
第四章系统实现
本系统是一个JSP,后台数据库用的是SQLServer,用Tomcat做Web服务器,本系统实现了在线考试中的核心功能,程序在Windows环境下经过测试能够运行。
4.1出卷模块的实现
该模块有chujuan.jsp和chujuan1.jsp两个JSP页面来实现,其中chujuan.jsp页面主要负责出卷表单的填写和提交,chujuan1.jsp负责把chujuan.jsp页面提交的数据进行处理后插入数据库。
1.chujuan.jsp
chujuan.jsp页面的界面。
图4.1chujuan.jsp页面的界面
程序说明:
出卷信息输入页面。
程序模块名称:
chujuan.jsp。
相关数据库:
无。
chujuan.jsp页面的代码
chujuan.jsp
<
html>
head>
metahttp-equiv="
Content-Type"
content="
text/html。
charset=gb2312"
>
title>
出卷<
/title>
styletype="
text/css"
!
--
.style2{font-size:
small}
-->
/style>
/head>
body>
formname="
form1"
method="
post"
action="
chujuan1.jsp"
<
tablewidth="
714"
border="
1"
bordercolor="
#33CC99"
tr>
tdwidth="
51"
height="
44"
&
nbsp。
/td>
156"
class="
style2"
divalign="
right"
选择题数目:
/div>
168"
inputtype="
text"
name="
xuanzeshumu"
129"
每一题分值:
127"
selectname="
xuanzefenzhi"
optionvalue="
1<
/option>
2"
2<
3"
selected>
3<
4"
4<
5"
5<
6"
6<
7"
7<
8"
8<
9"
9<
/select>
/tr>
tdheight="
48"
palign="
left"
/p>
td>
判断题数目:
p>
panduanshumu"
tdclass="
panduanfenzhi"
37"
主观题数目:
zhuguanshumu"
考试时间:
tdcolspan="
kaoshishijian"
分钟<
试卷编号:
shijuanbianhao"
/table>
center"
inputname="
Submit"
type="
submit"
value="
提交"
/form>
/body>
/html>
单击chujuan.jsp页面的“提交”按钮,提交数据,然后由chujuan1.jsp进行处理。
chujuan1.jsp页面的工作原理是根据chujuan.jsp提交的参数,从不同的题库中随机选出题目组成一份试卷。
最后把选出的结果插入数据库。
2.chujuan1.jsp
程序明白:
出卷结果提交页面。
chujuan1.jsp。
试卷表shijuan。
chujuan1.jsp页面的代码。
SCRIPTlanguage="
javascript"
functionbackward()
{
history.back()。
}
functionteacher()
window.location="
UntitledFrameset-5.htm"
。
/SCRIPT>
%@pagecontentType="
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 课程 在线 考试 系统 设计 实现 本科 课程设计