基于Struts的在线考试系统的设计及实现

时间:2022-09-02 04:36:57

基于Struts的在线考试系统的设计及实现

摘要: 随着计算机技术的发展及计算机的日益普及,网上考试已逐渐成熟。本论文研究的在线考试系统是基于B/S开发的体系,采用SQL Server 2000数据库和先进的基于Struts 的JSP技术开发的,以组织客观、公正、科学合理和考试为目的的标准化考试系统。

Abstract: With the development of computer technology and the increasing popularity of computers, online examinations have gradually matured. The online examination system is based on B/S developed system, using SQL Server 2000 database and JSP Struts-based advanced technology development to organizational objective, fair, rational and scientific examination system for the purpose of standardized tests.

关键词: 在线考试;JSP;Struts;B/S

Key words: online test;JSP;Struts;B/S

中图分类号:TP315文献标识码:A文章编号:1006-4311(2010)32-0192-02

0引言

Internet的开放性、分布性的特点使得网络考试系统突破了时间和空间的限制,极大地提高了教学的灵活性。基于WEB的在线考试系统将教师从繁琐的出题、监考、阅卷、试卷分析和成绩统计的传统考试中解脱出来,充分体现了准确、客观、公正、快速、简捷等特点。

本系统在Windows XP的平台下采用了Struts技术、SQL Server 2000数据库、Apache服务器,整个工程在基于B/S模式下,使用JSP语言来编写程序,以及Dreamweaver 8和Photoshop CS3软件来制作和美化系统页面。

本系统开发的目的是提供一种方便学生考试和老师阅卷的平台。系统继承和发扬了目前网络上比较流行的在线考试系统的特点,实现了较为完整的在线考试的各项功能。

1系统开发基本理论

1.1 JSP技术JSP(Java Servlet Page)[1]是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。利用JSP技术,动态信息由JSP页面来表现,JSP页面由安装在Web服务器或者使用JSP的应用服务器上的JSP引擎执行。JSP引擎接受客户端对JSP页面的请求,并且生成JSP页面作为对客户端的响应。JSP页面可以包含在多种不同的应用体系结构或者模型中,可以用于由不同协议、组件和格式所组成的联合体中。

基于JSP的动态信息技术是一个开放的、可扩展的建立动态Web页面的标准。不论采用什么创建工具,开发人员都可以使用JSP页面来创建可移植的Web应用,在不同的Web应用服务器上运行。

1.2 Struts技术Struts[2]由一组相互协作的类、Servlet以及Jsp TagLib组成[3]。基于Struts构架的Web应用程序基本上符合JSP Model2的设计标准,可以说是MVC设计模式的一种变化模型。

Struts有其自己的控制器,同时整合了其他的一些技术去实现模型层和视图层。在模型层,Struts可以很容易的与数据访问技术结合,包括EJB,JDBC和Object Relation Bridge。在视图层,Struts能够与JSP,XSL等等这些表示层组件相结合。

分别从模型、视图、控制器来看看Struts的体系结构,如图1所示。

1.3 JDBC技术JDBC(Java DataBase Connectivity,Java数据库连接)[4]是一套允许Java与SQL数据库对话的程序设计接口,它是用于执行SQL语句的Java API,是Java应用程序连结数据库、存取数据的一种机制,可以为多种关系数据库提供统一的访问,它由一组用Java语言编写的类和接口组成。

2系统体系结构和功能模块设计

2.1 系统体系结构基于B/S结构[5]的在线考试系统,应由终端(用户主机/浏览器)、WEB服务器、数据库服务器构成。在线考试系统的核心是中间的接入服务器部分。在线考试系统的总体结构图如图2所示:

2.2 功能模块设计《基于Struts的在线考试系统》包括两大功能模块:前台管理功能和后台管理功能,相应的功能结构图如图3和图4。依据系统需求分析,将其分解为考生信息模块、在线考试模块、管理员维护模块。

2.2.1 考生信息模块设计考生信息模块主要包括考生注册、考生登录、修改个人资料以及找回密码等4个功能。考生首先要注册为网站用户,然后才被授权登录网站进行一系列操作的权限;登录后考生还可以修改个人的注册资料。如果考生忘记了登录密码,还可以通过网站提供的找回密码功能快速找回密码。考生信息模块的系统流程图如图5所示。

2.2.2 在线考试模块设计在线考试模块主要功能是允许考生在网站上针对指定的课程进行考试。在该模块中,考生首先需要阅读考试规则,在同意所列出的考试规则后,才能选择考试课程,在选择考试课程后,系统将随机抽取试题,然后进入考试页面进行答题,当考生提交试卷或者到达考试结束时间时,系统将自动对考生提交的试卷进行评分,并给出最终考试成绩。在线考试模块的系统流程图如图6所示。

2.2.3 管理员维护模块设计管理员可以进行管理员信息管理、考生信息管理、考生成绩查询、课程信息管理、套题信息管理、考试题目信息管理。管理员维护模块的系统流程图如图7所示。

3系统测试

系统测试[6]的任务是发现并排除在分析、设计、编程各阶段中产生的各种类型的错误,以得到可运行的软件系统。本系统采用白盒法和黑盒法结合的方法对系统进行测试,分别从程序的内部逻辑和外部功能出发做单元测试、组装测试和确认测试。

4结论

本系统在Windows XP的平台下采用了Struts技术、SQL Server 2000数据库、Apache服务器,整个工程在基于B/S模式下,使用JSP语言来编写程序,以及Dreamweaver 8和Photoshop CS3软件来制作和美化系统页面。本系统开发的目的是提供一种方便学生考试和老师阅卷的平台。系统继承和发扬了目前网络上比较流行的在线考试系统的特点,实现了较为完整的在线考试的各项功能,包括学生注册、学生登录、学生在线考试、学生成绩查询、学生个人资料修改和退出;课程的添加、修改和删除;套题的添加和删除等。

参考文献:

[1]鲁晓东,李玉龙,杨建.JSP软件工程案例精解[M].北京:电子工业出版社,2005.

[2]卜.零基础学Struts[M].北京:机械工业出版社,2009.

[3]Kurniawan, Budi. Struts Design And Programming (Pap) [M]. Independent Pub Group,2005.

[4]王珊,萨师煊.数据库系统概论[M].第四版.高等教育出版社,2008.

[5]刘文涛.网络安全编程技术与实例[M].北京:机械工业出版社,2008.

[6]周伟明.软件测试实践[M].北京:电子工业出版社,2008.

上一篇:卫星通信网系统最优业务分布算法研究 下一篇:怎样提高学生在专业英语学习中的成效