您的位置: turnitin查重官网> 计算机 >> 计算机管理 >基于JDBC+Struts在线考试系统设计

基于JDBC+Struts在线考试系统设计

收藏本文 2024-03-26 点赞:15916 浏览:70014 作者:网友投稿原创标记本站原创

摘要:本文按照软件工程思想和面向对象分析和设计的过程,以无纸化考试需求为背景,设计并开发了本在线考试系统,该系统采用的是J2EE(Ja 2 Platform Enterprise Edition)三层架构来构建,遵从MVC模式设计(M代表模型,V代表视图,C代表控制器),典型三层结构。并且还采用了现阶段比较流行的JDBC、Struts等技术来实现。
关键词:考试系统;JDBC;Struts
1007-9599 (2012) 11-0000-01
一、介绍
现阶段学校与社会上的各种考试大都采用传统的考试方式。随着考试类型的不断增加及考试要求的不断提高,老师的工作量会非常大。尤其在远程网络教学中,学生地理上分布广,要实现统一集中安排考试会给老师和学生带来了众多的不便。在线考试系统可以利用因特网和局域网,随时随地实施对学生的考试,加上数据库技术的普遍利用,简化了传统考试的考试过程,网上在线考试已成为教学必不可少的手段。所以基于Internet 的远程考试系统作为现代远程教育的一个重要组成部分,与传统的考试方法相比,它具有客观性、广泛性,并且可以实现整个考试过程的全自动化管理,提高了教学效率,实现了教考分离。

二、在线考试系统设计目标

在线考试系统能够帮助教师完成从题目设计,考试安排,考试具体实施,试卷批改到分数统计以及总结的所有工作。
(一)JDBC 是Ja DataBase Connectivity的简称, 它是一个面向对象的应用程序接口(API), 通过API可访问各类关系数据库。JDBC的特点是它独立于具体的某个关系数据库。Ja程序(包括Ja Applications, Applets和Servlet)能通过SQL语句或存储过程(Stored Procedures)来存取数据库。要通过JDBC来存取某一具体类型的数据库,必须有适合的JDBC Driver,起到连接JDBC API与具体数据库之间的桥梁作用。Ja程序首先用JDBC API与JDBC Driver Manager实现交互,由JDBC Driver Manager载入指定的JDBC Drivers,然后就可以通过JDBC API来访问数据库。

(二)Struts框架

Struts是应用比较广泛的一种表现层框架,MVC是Model-View-Controller的简称,即模型-视图-控制器,MVC是一种设计模式和框架模型,强制性地分开应用程序的输入、处理和输出。MVC把应用程序分成三个核心模块:模型、视图和控制器,它们分别承担不同的任务。Struts是一个比较好的MVC框架提供了对开发MVC系统的底层支持,它采用的主要技术是Servlet,JSP和Customtagli-brary(自定义标记库)。作为一个MVC的框架,Struts对Model, View和Controller都提供了对应的实现组件[4]。

三、系统设计

(一)系统静态模型设计类图(ClassDiagram)设计是在线考试系统系统设计最核心的部分,明确基本类和基本类之间相互关系有助于开发者的后续设计修改和开发。类图(ClassDiagram)是描述类、接口、协作以及它们之间关系的图,用来显示系统中各个类的静态结构。它是一种静态模型类型。UML中的一个类图根据系统中的类以及各个类之间的关系描述系统的静态结构。另外类图也可以直接在面向对象语言中实现。(二)考试管理类设计在DAO层中,类ExamDaoImpl实现了IExamDao接口,主要完成和考试有关的增、删、改、查的操作。在业务层中类ExamServiceImpl实现了IExamService接口来完成一些业务操作。在控制层中主要由Action来完成。控制层调用业务层,业务层调用DAO层。BeanFactory类是一个公共的类,用来获得对象的实例。(三)数据库表设计根据系统需求和考试的需求,设立了如下数据库表:用户表:用于存储学生、老师、管理员的基本信息;权限表:用于存储系统用户组织的权限,不同的权限具有不同的功能操作;班级表:用于存储学生所在的班级的人数、地址;试题表:用于存储试题内容和答案;成绩表:用于存储学生的考试成绩;信息表:用于存储除了学生和教师沟通相关的信息,主要为了学生与老师更好的交流沟通。(四)DAO层的设计对于所有的Ja EE应用而言,所有的DAO组件都会大致包含CRUD(创建、查询、更新和删除)操作的方法,用于对数据库进行创建、查询、更新和删除操作。(五)业务逻辑层设计业务逻辑层设计与DAO层设计思路大致相似,只是DAO组件实现的是数据库访问功能,而业务逻辑组件实现的是业务逻辑功能。业务逻辑组件同样分两个部分:业务逻辑组件接口和业务逻辑组件实现类,这样做可以降低耦合度。(六)怎么写作器端验证客户端验证的主要作用是防止正常浏览者的误输入,仅能对输入进行初步过滤,对于恶意用户的恶意行为,客户端验证将无能为力,因此客户端验证绝不能代替怎么写作器端验证。怎么写作器端验证是整个应用的最后防线,它阻止了非法数据进入系统,对于系统的安全性、完整性,承载着不可替代的作用。采用Struts2的验证框架时,只需要为该Action指定一个验证文件即可。验证文件是一个XML配置文件,验证文件应该遵守Struts2的验证文件规则文件名应该为RegisterAction-validation.xml。

四、系统测试

测试是软件开发的重要环节之一。测试过程中采用了单元测试和集成测试。采用白盒法,以分支路径覆盖为最佳准则,且系统内多个模块可以并行地进行测试。集成测试也称为组装测试,综合测试或联合测试。集成测试是按设计要求把通过单元测试的各个模块组合在一起以后再行测试,以便发现与各相关接口有关的各种错误。在进行组装集成测试时,常要考虑到的有关问题主要有:数据经过接口是否会产生丢失;一个程序模块对另一个程序模块是否造成不应有的影响;几个子功能程序模块组合起来能否实现主体功能;误差不断积累程度是否不可接受以及全局数据结构是否不合理。
五、总结
本文以无纸化考试需求为背景,设计并开发了在线考试系统,按照软件工程思想和面向对象分析和设计的过程,该系统采用的是J2EE(

源于:查抄袭率本科论文www.udooo.com

Ja 2 Platform Enterprise Edition)三层架构来构建,遵从MVC模式设计(M代表模型,V代表视图,C代表控制器),典型三层结构。未来要对系统的组卷方法进行研究。
参考文献:
王飞.基于J2EE的网上考试系统设计与实现[J].成都机械高等专科学院学报.2005(3):23-25
张孝祥.IT课堂系统---Ja就业培训教程(网上课堂)
[3]罗晓沛,张迎新,蔡越江.Oracle数据库技术[M].武汉:华中理工大学出版社,2000,134-137
[4]李刚.Struts2权威指南—基于WebWork核心的MVC开发.电子工业出版社,2007.9;87-215

copyright 2003-2024 Copyright©2020 Powered by 网络信息技术有限公司 备案号: 粤2017400971号