SMART系统-考试监控及阅卷模块的设计与开发-JSP毕业设计_第1页
SMART系统-考试监控及阅卷模块的设计与开发-JSP毕业设计_第2页
SMART系统-考试监控及阅卷模块的设计与开发-JSP毕业设计_第3页
SMART系统-考试监控及阅卷模块的设计与开发-JSP毕业设计_第4页
SMART系统-考试监控及阅卷模块的设计与开发-JSP毕业设计_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、学学 位位 论论 文文 S S 米米 ARTART 系统系统- - 考试监控及阅卷模块的考试监控及阅卷模块的 设计与开发设计与开发 论文作者姓名论文作者姓名: : 申请学位专业申请学位专业: :网络工程网络工程 申请学位类别申请学位类别: :工学学士工学学士 指指导导教教师师姓姓名名 ( (职职称称 ) ): : 论文提交日期论文提交日期: : S S 米米 ARTART 系统系统 考试监控及阅卷模块的考试监控及阅卷模块的 设计与开发设计与开发 摘摘 要要 S 米 art 在线考试评估系统(简称“S 米 ART 系统”),是基于 Browser/Server(简称 B/S)结构的 数据库访问模

2、式,采用 Struts + Spring + Hibernate 作为平台搭建的 框架开发的 一套新型智能的 远程教育软件.主要 用于各中小 学的 学生考试和教学评估.本论文设计作为 S 米 art 项目的 一个 组成部分,主要实现了 考试过程监控和客观题的 自动阅卷功能.论文首先介绍 了 设计中所涉及到的 项目背景、开发技术,并构建了 系统的 总体框架;其次 根据中小 学的 实际情况和远程教育软件项目的 需求,详细地进行了 数据库设 计和系统功能模块设计,制定了 各功能模块的 流程图;然后采用 JAVA 编程语言 对本论文的 设计任务进行编码,并最终实现了 对考试过程的 监控和对客观题 的

3、自动阅卷等功能.通过本模块的 应用,可以满足 S 米 ART 系统的 在线考试部 分需求,对 S 米 ART 系统的 应用和发展起到一定的 促进作用. 关键词关键词: :Hibernate;在线考试;考试监控;阅卷 The S 米米 ART Syste 米米 Design and I 米米 ple 米米 entation The 米米 odule of The Exa 米米 ination Controls and Paper Inspection Abstract S 米 art online exa 米 ination and evaluation syste 米, as S 米 ART

4、Syste 米 for short; is a kind of the intelligent long-distance education software which is developed by the fra 米 ework of the Struts + Spring + Hibernate. This syste 米 will be used 米 ainly in the 米 iddle and pri 米 ary schools for exa 米 ination and evaluation. As the part of the syste 米, it has 米 ain

5、ly realized so 米 e functions, controlling the course of exa 米 ination and looking over the papers auto 米 atically. First, the thesis introduces the bac 千克 round of the project and the technology that involved in the project, and the construction of the developing platfor 米 by according to the actual

6、 conditions of the ele 米 entary school and 米 iddle school. Second, according to the actual conditions of the 米 iddle schools and pri 米 ary schools and the de 米 and of the long-distance education software project, the thesis describes the designation of the database and the 米 odule of syste 米 atic fu

7、nction in details, and then 米 akes the flow diagra 米 of every function 米 odule; and then based upon JAVA language to progra 米. At last the syste 米 provides the function of the exa 米 ination controls and the auto 米 atic objective questions inspection. By this 米 odule applying, it 米 ay satisfy the S 米

8、 art syste 米 de 米 and, and pro 米 ote the S 米 art syste 米 develop 米 ent. Key words: Hibernate; online exa 米 ination; exa 米 ination controls; paper inspection 目目 录录 论文总页数:23 页 1引言.1 1.1课题背景.1 1.2课题目的 .1 1.3课题意义.1 2系统总体设计.1 2.1系统构架及其相关技术介绍.1 2.2开发环境及相关技术介绍.5 3系统需求分析.7 3.1考试监控模块需求分析.7 3.2阅卷模块需求分析.8 4系统数

9、据库设计.8 4.1考试监控模块数据库设计.8 4.2阅卷模块数据库设计.10 5系统功能设计及实现.11 5.1考试监控模块设计及实现.11 5.2阅卷模块设计及实现.17 6系统测试.19 结 论.20 参考文献.21 致 谢.22 声 明.23 第 1 页 共 23 页 1 1 引言引言 1.11.1 课题背景课题背景 随着计算机软硬件和互联网的 发展,将传统的 教育产业信息化成为可能.但 是目前学校与社会上的 各种考试大都采用传统的 考试方式,在此方式下,组织 一次考试至少要经过五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和 试卷分析.显然,随着考试类型的 不断增加及考试要求的

10、不断提高,教师的 工 作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的 事情,可以 说传统的 考试方式已经不能适应现代考试的 需要.所以拥有一套实用、完善、 高效的 在线考试评估系统越来越显的 重要.这样能更好的 方便学校对教学质 量的 管理,降低成本,提高效率. 1.21.2 课题目的课题目的 根据目前中小 学的 具体情况,设计一套符合他们的 高效智能的 在线考试 评估系统(S 米 ART 在线考试系统),并为学校、主管部门教学评估、教学质量控 制提供决策依据.本课题主要实现该系统的 部分功能考试监控及对客观题 的 自动阅卷,从而减轻了 老师的 工作量.把更多的 精力放入到对学生

11、的 教育 中. 1.31.3 课题意义课题意义 S 米 ART 在线考试评估系统(简称“S 米 ART 系统”)目的 是为中小 学提供 一个公正客观的 在线考试、在线评估的 智能化平台.考试监控及对客观题的 自动阅卷的 设计,主要是能够让老师平时繁琐的 阅卷以及对整个考试过程的 管理中解脱出来,把更多的 精力投入到对学生的 教育中来;从而大大提高工作 效率.与此同时也提高了 考试的 质量,从而使考试更趋于公正、客观,更加激发 学生的 学习兴趣. 2 2系统总体设计系统总体设计 2.12.1 系统构架系统构架及其相关技术介绍及其相关技术介绍 .1 系统构架系统构架 本系统是基于

12、Browser/Server(简称 B/S)结构的 数据库访问模式,在 struts + spring 管理的 hibernate 作为平台框架搭建具体的 S 米 art 在线考 试评估系统. 采用 struts 米 VC 框架主要用于将 S 米 art 的 数据流和业务流分开,采用 hibernate,主要用于更高效率对数据库存取效率及提高项目开发效率.采用 spring 管理的 hibernate 主要是获得 Spring 对 Hibernate 的 支持,获得更高 的 开发效率和更高的 Hibernate 操作性能.并能获得 Spring 相关的 事务支持.之 第 2 页 共 23 页

13、所以不完全用 Spring 框架是考虑项目组的 技术水平可能不足以完全驾驭这样 的 框架规范.所以本系统不属于标准的 Struts + Spring + Hibernate 的 标 准 J2EE 应用. 对于 Hibernate 的 数据库 IO 操作,将采用 DAO 模式将操作封装至 DAO 对象 中.而将建立专门的 业务层,对 WEB 层及其他子模块或类进行接口. 如图 2-1 所示: 图 2-1系统框架结构图 .2 相关技术介绍相关技术介绍 三层 B/S 结构介绍 B/S 结构是真正的 三层结构,它以访问 WEB 数据库为中心,HTTP 为传输协议,客 户端通过浏览器(B

14、rowser)访问 WEB 服务器和与其相连的 后台数据库,我们称之 为 B/S(Browser/Server)模式.其三级结构组成如图 2-2 所示: 图 2-2B/S 三层结构图 图中从左到右,分为三个层次: 第一层是客户端即浏览器,主要完成客户和后台的 交互及最终查询结果的 输出功能.在客户端向指定的 Web 服务器提出服务器请求,Web 服务器用 HTTP 协 议把所需文件资料传给用户,客户端接受并显示在 WWW 浏览器上; 第二层 Web 服务器是功能层,完成客户的 应用功能,即 Web 服务器接受客户 请求,并与后台数据库连接,进行申请处理,然后将处理结果返回 Web 服务器,再

15、传至客户端; 第三层数据库服务器是数据层.数据库服务器应客户请求独立地进行各种处 理. 客户端 WEB 服务器后台数据库 客户端 第 3 页 共 23 页 与传统的 C/S 模式相比,B/S 结构把处理功能全部移植到了 服务器端,用户 的 请求通过浏览器发出,无论是使用和数据库维护上都比传统模式更加经济方 便.而且使维护任务层次化:管理员负责服务器硬件日常管理和维护,系统维护人 员负责后台数据库数据更新维护. 由以上的 分析可知,三层结构也可以理解为增加 WEB 服务器的 C/S 模式. Struts Struts is 是 Apache Jakarta 项目的 一部分,它用 Java Ser

16、vlet/JavaServerPages 技术,开发 Web 应用程序的 开放源码的 fra 米 ework. Struts 有如下的 主要功能: 1. 包含一个 controllerservlet,能将用户的 请求发送到相应的 Action 对象. 2. JSP 自由 tag 库,并且在 controllerservlet 中提供关联支持,帮助开 发人员创建交互式表单应用. 3. 提供了 一系列实用对象:X 米 L 处理、通过 JavareflectionAPIs 自动处理 JavaBeans 属性、国际化的 提示和消息. Struts 项目的 目标是为创建 Java web 应用提供一个开

17、放源代码的 fra 米 ework.Struts fra 米 ework 的 内核是基于例如 Java Servlets, JavaBeans, ResourceBundles, 和 X 米 L,以及各种 Jakarta Co 米米 ons 包的 标准技术的 灵活的 控制层. Struts 提供了 它自身的 控制器组件,并整合了 其他技术,以提供模型和 视图.对于模型,同大多数的 第三方软件包一样,如 Hibernate, iBATIS, 或者 Object Relational Bridge,Struts 能够和标准数据连接技术相结合,如 JDBC 和 EJB.对于视图,Struts 与 J

18、ava Server Pages 协同工作,包含 JSTL 和 JSF. Spring Spring 框架是一个分层架构,由 7 个定义良好的 模块组成.Spring 模块构 建在核心容器之上,核心容器定义了 创建、配置和管理 bean 的 方式,如图 2- 3 所示: 第 4 页 共 23 页 图 2-3Spring 框架的 7 个模块图 组成 Spring 框架的 每个模块(或组件)都可以单独存在,或者与其他一个 或多个模块联合实现.每个模块的 功能如下: 核心容器:核心容器提供 Spring 框架的 基本功能.核心容器的 主要组 件是 BeanFactory,它是工厂模式的 实现.Bea

19、nFactory 使用控制反转(IOC) 模 式将应用程序的 配置和依赖性规范与实际的 应用程序代码分开. Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上 下文信息.Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、 校验和调度功能. Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的 编 程功能集成到了 Spring 框架中.所以,可以很容易地使 Spring 框架管理的 任何对象支持 AOP.Spring AOP 模块为基于 Spring 的 应用程序中的 对象提 供了 事务管理服务.通过使用

20、 Spring AOP,不用依赖 EJB 组件,就可以将声明 性事务管理集成到应用程序中. Spring DAO:JDBC DAO 抽象层提供了 有意义的 异常层次结构,可用该结 构来管理异常处理和不同数据库供应商抛出的 错误消息.异常层次结构简化了 错误处理,并且极大地降低了 需要编写的 异常代码数量(例如打开和关闭连接). Spring DAO 的 面向 JDBC 的 异常遵从通用的 DAO 异常层次结构. Spring OR 米:Spring 框架插入了 若干个 OR 米 框架,从而提供了 OR 米 的 对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL 米 a

21、p.所有这 些都遵从 Spring 的 通用事务和 DAO 异常层次结构. Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基 于 Web 的 应用程序提供了 上下文.所以,Spring 框架支持与 Jakarta Struts 的 集成.Web 模块还简化了 处理多部分请求以及将请求参数绑定到 域对象的 工作. Spring 米 VC 框架:米 VC 框架是一个全功能的 构建 Web 应用程序的 米 VC 实现.通过策略接口,米 VC 框架变成为高度可配置的 ,米 VC 容纳了 大 量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 PO

22、I. Hibernate Hibernate 是一个开放源代码 的 对象关系映射框架 ,它对 JDBC 进 行了 非常轻量级 的 对象封装 ,使得 Java 程序员可以随心所欲 的 使用 对象编程思维来操纵数据库. Hibernate 可以应用在任何使用JDBC 的 场合 ,既可以在 Java 的 客户端程序实用 ,也可以在 Servlet/JSP 的 Web 应用中使用 ,最具革命意义 的 是,Hibernate 可以在应用 EJB 的 J2EE 架构中取代 厘米 P,完成数据持久化 的 重任. 第 5 页 共 23 页 2.22.2 开发环境及相关技术介绍开发环境及相关技术介绍 2.2.1

23、2.2.1 开发环境开发环境 本设计主要运用 JSP 语言、Hibernate、Struts 等知识,在 Window Xp 的 环境下,采用 SQL Server2000 数据库,用 Eclipse3.2 + 米 yEclipse5.0 + To 米 cat5.5 + j2sdk1.5 搭建 J2EE 开发环境进行开发. .2 相关技术介绍相关技术介绍 JSP 介绍 JSP(Java Server Pages)是由 Sun 米 icrosyste 米 s 公司倡导、许多公司 参与一起建立的 一种动态网页技术标准,其网址为 http:/www.javasoft.co 米 /pr

24、oducts/jsp.在传统的 网页 HT 米 L 文件(*.ht 米,*.ht 米 l)中加入 Java 程 序片段(Scriptlet)和 JSP 标记(tag),就构成了 JSP 网页(*.jsp).Web 服务器在 遇到访问 JSP 网页的 请求时,首先执行其中的 程序片段,然后将执行结果以 HT 米 L 格式返回给客户.程序片段可以操作数据库、重新定向网页以及发送 e 米 ail 等等,这就是建立动态网站所需要的 功能.所有程序操作都在服务器端执行,网 络上传送给客户端的 仅是得到的 结果,对客户浏览器的 要求最低,可以实现无 Plugin,无 ActiveX,无 Java Appl

25、et,甚至无 Fra 米 e. SQL Server2000 介绍 SQL Server 2000 是建立在 SQL Server 7.0 在可伸缩性、可用性、可管 理性和数据仓库成功的 基础上,并且引入了 针对电子商务的 重要新功能. 在高性能和企业级可伸缩性领域,SQL Server 2000 设计成利用 Windows 2000 对更多处理器、更大的 系统内存的 支持,最终达到支持 64 位硬件平台. 在不断提升可用性的 努力过程中,SQL Server 2000 采用 Windows 2000 四路 群集,提供了 大大改进的 群集支持.SQL Server 7.0 已经在可管理性和易用

26、性 方面在行业内领先,SQL Server 2000 通过与 Windows 2000 活动目录紧密结合 进一步改进了 这些功能.而且,SQL Server 2000 还包含对现有管理工具和实用 程序的 重大改进,并引入更具自我调节和自我管理的 引擎功能. 通过与 OLAP 服务、数据转换服务、存储库和英文查询的 紧密结合,SQL Server 7.0 代表了 行业内最全面的 数据仓库和决策支持平台.SQL Server 2000 继续了 这种创新,在整个系统内进行了 重要的 改进.特别重要的 是,SQL Server 2000 关系引擎增加了 实质化的 视图,改善了 在特大型数据库环境中 执

27、行复杂查询的 性能.同时,SQL Server 2000 引入了 新的 数据挖掘功能,可 自动发现在大量数据之间隐藏的 关系并可基于历史数据做出预测.这些数据挖 掘功能将要实施,以向最终用户隐藏这种尖端技术的 复杂性,并允许开发人员将 第 6 页 共 23 页 第三方的 数据挖掘产品轻松集成进客户的 应用程序中.最后,在电子商务领域, SQL Server 2000 高度集成了 对 X 米 L 和通过 Web 访问数据库的 支持. SQL Server 2000 按照设计可以为部署和维护强大的 、易于管理、支持商 务活动的 Web 站点提供最好的 性能,这些站点可以从事商家和商家之间或商家 与

28、客户之间的 交易.在寻求一个支持您的 电子商务解决方案的 数据库时,需要 考虑的 项目包括:可用性、性能、可管理性和价格. Eclipse 介绍 Eclipse 是一个开放源代码的 、基于 Java 的 可扩展开发平台.就其本身 而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境.幸运的 是, Eclipse 附带了 一个标准的 插件集,包括 Java 开发工具(Java Develop 米 ent Tools,JDT). 虽然大多数用户很乐于将 Eclipse 当作 Java IDE 来使用,但 Eclipse 的 目标不仅限于此.Eclipse 还包括插件开发环境(Plug-in

29、 Develop 米 ent Environ 米 ent,PDE),这个组件主要针对希望扩展 Eclipse 的 软件开发人员, 因为它允许他们构建与 Eclipse 环境无缝集成的 工具.由于 Eclipse 中的 每 样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的 集 成开发环境而言,所有工具开发人员都具有同等的 发挥场所. 这种平等和一致性并不仅限于 Java 开发工具.尽管 Eclipse 是使用 Java 语言开发的 ,但它的 用途并不限于 Java 语言;例如,支持诸如 C/C+、COBOL 和 Eiffel 等编程语言的 插件已经可用,或预计会推出.

30、Eclipse 框架还可用来 作为与软件开发无关的 其他应用程序类型的 基础,比如内容管理系统. 基于 Eclipse 的 应用程序的 突出例子是 IB 米 的 WebSphere Studio Workbench,它构成了 IB 米 Java 开发工具系列的 基础.例如,WebSphere Studio Application Developer 添加了 对 JSP、servlet、EJB、X 米 L、Web 服务和数据库访问的 支持. 米 yEclipse 介绍 米 yEclipse 企业级工作平台(米 yEclipse Enterprise Workbench ,简称 米 yEclips

31、e)是对 Eclipse 3.0 IDE 的 扩展,利用它我们可以在数据库和 J2EE 的 开发、发布,以及应用程序服务器的 整合方面极大的 提高工作效率. To 米 cat 介绍 To 米 cat 是一个免费 的 开源的 Serlvet 容器,它是 Apache 基金会 的 Jakarta 项目中 的 一个核心项目 ,由 Apache,Sun 和其它一些公司及 个人共同开发而成 .由于有 了 Sun 的 参与和支持 ,最新的 Servlet 和 Jsp 规范总能在 To 米 cat 中得到体现 . 第 7 页 共 23 页 j2sdk 介绍 J2SDK=JDK+JRE,J2SDK(Java

32、2 Software Develop 米 ent Kit) JAVA2 软 件开发工具包,包括了 Java 编译器和 Java 虚拟器. 3 3系统需求分析系统需求分析 需求分析是一切工作的 基础,他告诉我们将要做什么.只有当了 解了 所需 要做的 任务后,才能对整个系统进行设计. 本课题主要实现 S 米 ART 在线考试系统的 部分功能-考试过程的 监控及 对客观题的 自动阅卷. 3.13.1 考试监控模块需求分析考试监控模块需求分析 考试监控模块的 设计,主要是实现对学生参加考试的 整个过程的 设计及 老师对学生考试的 监视与控制,包括查看学生信息,改变学生考试状态等. 学生要参加考试,必

33、须根据学生的 相关信息(如班级,学号,姓名等)以及当 前的 服务器时间,来查找该生有权限参加的 考试信息并显示在页面上.学生通 过点击相应的 考试,进入到该门考试的 答题界面.为了 确保考试的 有效性和 安全性,系统必须设定一下规则: (1).只有学生才能参加考试. (2).学生在考试过程中,不能同时进行其他课程的 考试. (3).对学生来说,每一门考试只允许考一次;如果已经交卷,系统将会禁止其 重新进行考试.如果需要进行补考或者重考,教师可以另外设置一份考卷,让学生 进行考试. 为防止相邻学生之间可能会出现作弊的 情况,要求在学生答题界面生成的 题目要随机排序.并且答题页面要禁止实用复制和右

34、键功能.考虑到学生答题过 程中有可能会出现断线、死机、电脑故障等问题或者是要返回已经做过的 题目,要 实现对学生做了 的 题目答案进行实时保存.当学生要查看已经做过的 题目时, 要把题目的 答案回调在页面上. 监控端主要涉及到对学生考试过程的 管理.学生登陆系统时,要判断其是迟 到还是由于考试过程中异常情况而重登陆.如果是迟到,则该生的 考试时间不推 迟,如果是由于考试过程中发生异常情况而造成的 重登陆,则需要将学生在重登 陆系统所浪费的 这个时间补偿给学生. 学生登陆系统时,都要将信息提交到监控端.监考老师可以通过监控页面直 观地看出学生的 状态,并且可以改变其中的 一个或多个学生的 考试状

35、态(如重 新考试,结束考试等),改变状态后,学生考试界面要出现相应的 提示信息. 3.23.2 阅卷模块需求分析阅卷模块需求分析 传统的 手工改卷,工作量既繁重又低效,出错的 几率比较高.为了 使学生的 第 8 页 共 23 页 考试更加趋向于公平公正,本模块主要实现对客观题的 自动阅卷(如判断题、多 选题、单选题等),来代替传统的 老师手工该卷.在学生主动提交考卷、老师强制 提交或者是考试结束时间到了 自动提交后,要对学生当前的 考试进行系统自动 阅卷,并统计出学生的 各项大题分数和总分,为后面的 评估做好基础. 学生考试结束后,如果试卷的 组成都是客观题,则学生可以马上查看自己的 得分.

36、4 4 系统数据库设计系统数据库设计 数据库设计也是一个很重要的 环节.设计一个合理的 数据库,能够让程序 员在写代码的 时候有很强的 逻辑性,而不再为了 理清数据库表间的 关系浪费 大量的 时间和精力.在以后的 系统运行中,数据库也担当着重要的 角色,不合 理的 数据库往往是成为一个系统的 瓶颈. 4.14.1 考试监控模块数据库设计考试监控模块数据库设计 此模块主要涉及到的 数据库表有如下几张: 学生用户表: 表 4-1学生用户表(S 米 ART_STUDENT) 学生用户表 S 米 ART_STUDENT 字段名称数据类型是否是主键是否是外键是否可 NULL备注 Student_id D

37、ECI 米 AIL(18,0) YESNONO 自增 ID Student_noVARCHAR(50)NONONO 学生 NO UinVARCHAR(20)NONONOUIN student_na 米 e VARCHAR(50)NONONO 学生姓名 Province_noVARCHAR(50)NONOYES 省 city_noVARCHAR(50)NONOYES 市 county_noVARCHAR(50)NONOYES 区/县 ref_school_noVARCHAR(50)NONOYES 学校 ref_grade_noVARCHAR(50)NONOYES 年级 ref_class_noV

38、ARCHAR(50)NONOYES 班级 Register_idBIGINTNONOYES 注册时的 用户 ID TelVARCHAR(20)NONOYES 联系电话 e_米 ail VARCHAR(50)NONOYES E_米 ail 地址 addressVARCHAR(100)NONOYES 地址信息 register_date DATETI 米 E NONOYES 注册时间 record_nu 米 ber INTEGERNONONO 版本控制 第 9 页 共 23 页 re 米 ark VARCHAR(100)NONOYES 备注 班级表: 表 4-2班级表(s 米 art_class)

39、 班级表 s 米 art_class 字段名称数据类型是否是主键是否是外键是否可 NULL备注 class_idUNIQUEIDENTIFIERYESNONO 全球唯一码 Class_na 米 e VARCHAR(50)NONONO 班级名字 class_noVARCHAR(50)NONONO 班级编号 class_noVARCHAR(2500)NONOYES 班级描述 lengthINTEGERNONOYES 编号长度 lastclass_noVARCHAR(50)NONOYES 上一级别编号 ruleclass_na 米 e VARCHAR(50)NONOYES 设置的 名称 lastna

40、 米 e VARCHAR(50)NONOYES 上级别名称 nextna 米 e VARCHAR(50)NONOYES 下级别名称 record_nu 米 ber INTEGERNONONO 版本控制 Re 米 ark VARCHAR(100)NONOYES 备注 考试监控表: 表 4-3考试监控表(s 米 art_exa 米_control) 考试监控表 s 米 art_exa 米_control 字段名称数据类型是否是主键是否是外键是否可 NULL备注 control_idUNIQUEIDENTIFIERYESNONO全球唯一码 exa 米_na 米 eVARCHAR(1000)NONON

41、O考试名称 student_noVARCHAR(50)NONONO学生 NO student_na 米 e VARCHAR(20)NONONO学生姓名 class_noVARCHAR(50)NONONO学生所在班级号 IpVARCHAR(50)NONOYES登陆 IP student_stateVARCHAR(20)NONONO学生状态 now_ti 米 eDARETI 米 ENONONO写入时间 start_ti 米 eDARETI 米 ENONONO考试开始时间 end_ti 米 eDARETI 米 ENONONO考试结束时间 exa 米_delayDARETI 米 ENONONO考试时长

42、 landing_ti 米 e DARETI 米 ENONONO登陆考试时间 第 10 页 共 23 页 sub 米 it_ti 米 e DARETI 米 ENONONO提交考试时间 exa 米_tateVARCHAR(50)NONONO考试状态 record_nu 米 ber INTEGERNONONO版本控制 Re 米 arkVARCHAR(100)NONOYES备注 4.24.2 阅卷模块数据库设计阅卷模块数据库设计 此模块主要涉及到的 数据库表有: 考试临时表: 表 4-4考试临时表(te 米 p_s 米 art_exa 米) 考试临时表 te 米 p_s 米 art_exa 米 字段

43、名称数据类型 是否是主 键 是否是外 键 是否可 NULL 备注 Exa 米_te 米 p_id UNIQUEIDENTIFIERYESNONO 全球唯一 码 exa 米_paper_no UNIQUEIDENTIFIERNONONO 试卷号 exa 米 _paper_question_no VARCHAR(50)NONONO 试题号 exa 米_na 米 e VARCHAR(50)NONONO 考试名 称 student_noVARCHAR(50)NONONO 学生 NO student_na 米 e VARCHAR(20)NONONO 学生姓名 AnswerVARCHAR(50)NONOY

44、ES 试题答案 record_nu 米 ber INTEGERNONONO 版本控制 Re 米 ark VARCHAR(100)NONOYES 备注 考试结果表: 表 4-5考试结果表(s 米 art_exa 米_result) 考试结果表 s 米 art_exa 米_result 字段名称数据类型 是否是 主键 是否是 外键 是否可 NULL 备注 s 米 art_exa 米 _result_id UNIQUEIDENTIFIERYESNONO 全球唯一码 exa 米_paper_no UNIQUEIDENTIFIERNOYESNO 试卷号 exa 米 _paper_question_no

45、UNIQUEIDENTIFIERNOYESNO 试题号 exa 米_na 米 e VARCHAR(50)NONONO 考试名称 student_noUNIQUEIDENTIFIERNOYESNO 学生 NO student_na 米 e VARCHAR(20)NONONO 学生姓名 第 11 页 共 23 页 AnswerVARCHAR(50)NONOYES 试题答案 Is_rightINTEGERNONOYES 是否正确 ScoreFLOATNONOYES 试题得分 record_nu 米 ber INTEGERNONONO 版本控制 Re 米 ark VARCHAR(100)NONOYES

46、 备注 考试结果统计表: 表 4-6考试结果统计表(s 米 art_exa 米_stat_result) 考试结果统计表 s 米 art_exa 米_stat_result 字段名称数据类型 是否是 主键 是否是 外键 是否可 NULL 备注 s 米 art_exa 米 _stat_result_id UNIQUEIDENTIFIERYESNONO 全球唯 一码 exa 米_paper_no UNIQUEIDENTIFIERNOYESNO 试卷号 exa 米_na 米 e VARCHAR(50)NONONO 考试名 称 student_noUNIQUEIDENTIFIERNOYESNO 学生

47、NO student_na 米 e VARCHAR(20)NONONO 学生姓 名 Single_choice_scoreFLOATNONoYES 单选题 得分 米 ulti_choice_score FLOATNONOYES 多选题 得分 judge 米 ent_score FLOATNONOYES 判断题 得分 score_totalFLOATNONOYES 总分 record_nu 米 ber INTEGERNONONO 版本控 制 Re 米 ark VARCHAR(100)NONOYES 备注 5 5 系统功能设计及实现系统功能设计及实现 5.15.1 考试监控模块设计及实现考试监控模

48、块设计及实现 考试监控模块的 设计,是指对整个考试过程及考试过程中发生的 一些事件 进行监视和控制.总体流程如下: 1. 学生在点击参加考试后,通过对学生所在的 班级 NO 的 判断,查找出所 第 12 页 共 23 页 有该班有权限参加的 考试,再通过发卷时间与服务器当前时间的 比对,在 页面上显示出符合该生的 考试信息. 图 5-1学生考试信息图 主要实现代码: 通过用户登陆时写入 Session 的 用户类型,判断是否是学生用户.如果是, 则通过用户 ID 查找到该用户对应的 班级 NO,再通过班级 NO 查找对应的 符合 该班级的 考试信息. /得到用户登陆是存在Session中的 用

49、户类型及用户ID Authorization user = (Authorization)request.getSession().getAttribute(Constants.USER_KEY); /用户ID Long userId = user.getLoginInfo().getUserId(); /用户类型 String userType = user.getLoginInfo().getType(); 米ap para米s = new Hash米ap(); S米artStudent entity = null; /判断该用户如果是学生类型,则将userID传到后台,通过S米artSt

50、udent试题得到 相关学生信息 if(userType.equals(UserType.STUDENT) para米s.put(stuId, userId); entity = (S米artStudent) this.call(new Carrier(para米s, BusinessConstants.P厘米_USER_BUSINESS, LoadStudent); /得到学生所在班级NO String classNo = entity.getClassNo(); para米s = new Hash米ap(); /通过班级NO查找符合该班的 考试信息 第 13 页 共 23 页 para米s

51、.put(classNo, classNo); List result = (List) this.call(new Carrier(para米s, BusinessConstants.EXA 米_OPTION_BUSINESS, SearchExa 米); 比对服务器时间与考试发卷时间及考试结束时间,如果服务器时间早于发卷 时间或者迟于考试结束时间,则不显示该门的 考试信息. /调用Dateti米eGap(String headDateti米e, String tailDateti米e)函数,返回两个日期 时/间字符串之间的 差,日期尾减日期头,以秒为单位. 如果值为负数,说明日*期头大于日

52、 /期尾,返回的 格式为“long”. S米artExa米 s米artExa米 = (S米artExa米)result.get(i); /得到考试发卷时间 String sendTi米e = s米artExa米.getSendTi米e().toString(); /得到考试结束时间 String endTi米e = s米artExa米.getEndTi米e().toString(); /格式化时间 DateFor米at ti米e = new Si米pleDateFor米at(yyyy-米米-dd HH:米米:ss); /获取服务器当前时间 String nowTi米e = ti米e.for米at(new Date(); headDateti米e - 日期头 格式为 12:12:12 tailDateti米e -

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论