javaee框架的网上考试系统
摘 要本论文模拟当前的高校教学环境,旨在论述并开发一款适合于高校在线考试的网上考试系统。本系统使用Java Web平台,在充分利用JavaScript、AJAX等强大的Java Web编程技术的同时,使用了目前业界流行的Strurs2+Spring+Hibernate框架,使系统层次更加分明,减少程序Bug,提高编程效率。系统通过模拟高校环境,设置了三种用户角色,分别为学生、教师、系统管理员。对用户、院系班级、课程、试卷、题目等实体对象及之间的联系做了分析,利用计算机网络来提供高效、科学的考试服务,使系统功能初步满足高校在线考试的需求。
目 录
第一章 绪 论 1
1.1 背景概述 1
1.2 系统开发的目的和意义 1
第二章 技术介绍 2
2.1 Struts2简介 2
2.2 Spring简介 2
2.3 Hibernate简介 2
2.4 AJAX简介 2
2.5 技术路线介绍 3
2.5.1 基于Spring的事务管理 3
2.5.2 基于Hibernate的HQL数据库查询 3
第三章 需求分析 4
3.1 项目简介 4
3.2 功能需求 4
3.2.1 登入模块 4
3.2.2 用户管理模块 4
3.2.3 题库管理模块 4
3.2.4 个人信息管理模块 4
3.2.5 试卷管理模块 5
3.2.6 考试管理模块 5
第四章 系统概要设计和详细设计 6
4.1 概要设计 6
4.1.1 操作流程 6
4.1.2 系统数据结构设计 7
4.1.3 概念结构设计 7
4.1.4 逻辑结构设计 9
4.2 详细设计 11
4.2.1 系统各功能模块 11
第五章 系统的实现与测试 14
5.1 运行环境配置 14
5.2 编码 14
5.3 主要类设计 14
5.3.1 U
*好棒文|www.hbsrm.com +Q: #351916072#
serService层 14
5.3.2 QuestionService层 14
5.3.3 InfoIndexService层 15
5.3.4 CourseService层 15
5.3.5 PaperService层 15
5.3.6 AnswerSheetService层 15
5.4 主要HQL代码 15
5.4.1 增加、删除、修改的HQL语句 16
5.4.2 简单查询的HQL语句 16
5.4.3 使用模糊查询的HQL语句 16
5.4.4 多表查询的HQL语句 16
5.5 系统主要页面展示 17
5.6 测试的目的 19
5.6.1 系统测试 20
结束语 24
致 谢 25
参考文献 26
第一章 绪 论
1.1 背景概述
21世纪是一个以网络为核心的信息时代,相对于网络硬件,承载在其之上的各种软件也扮演着重要的角色。如今,各行各业的信息处理如果缺少了专用或通用的软件,工作效率将会变得低下。基于Java EE框架的网上考试系统针对考试应运而生得软件。它避免了传统考试通过花费大量物力、人力来打印试卷、评卷、统计成绩、成绩分析等繁琐方式,利用计算机网络系统来提供高效、科学的考试服务。在利用计算机网络系统来提供高效、科学的考试服务近十几年来,网上考试系统得到了快速发展,数据库也日渐完善,功能强大的考试系统越来越多。
在系统方面,功能愈渐强大。比如将会实现主观题目的考试和自动评卷,实现在线视频交流、测评、监督,利用视频、音频技术实现一些不能在普通试卷上表达出的动态题目甚至实现一些模拟现实环境的实际应用题目等等。
在应用范围方面,以往的网上考试题目由于技术限制,只能出现简单的客观题。但随着网络视频、音频、3D模拟、人工智能的发展,考试题目的形式越来越多样化,再加上网上考试本身高效、方便、易于管理及统计的优点,越来越多的企事业单位或联盟都将会搭建自己的考试系统及与本行业相关的数据库题库,以便更加高效、便捷的选拔、测试人才。
1.2 系统开发的目的和意义
网上考试系统充分利用现有的网络技术使得考试不拘泥于纸质媒介,可以不受时间、地点等限制。例如:第一,网上考试系统可以根据需要快速生成不同类型的试卷,来满足不同科目的要求,高效而又便捷;第二,网上考试答完后,系统可以自动对试卷进行评阅、排序、统计、评估等为教师提供了高效而深层次的评价信息;第三,避免了传统考试通过花费大量人力、物力来打印试卷、评卷、统计成绩、成绩分析等繁琐方式,利用计算机网络系统来提供高效的考试服务,提高教师的工作效率。
网上在线考试系统可以使用远程教学、远程考试答题的方式,通过网上考试答题来便捷、高效的对学员进行在线测试。避免了传统考试通过花费大量物力、人力来打印试卷、评卷、统计成绩、成绩分析等繁琐方式。
第二章 技术介绍
2.1 Struts2简介
Struts2是一个应用框架,基于MVC设计模式。Struts2继承了Struts1和WebWork的优点,但是Struts2在Struts1的基础上有了很大的改进。比如说在Action的实现方面,Struts1要求必须统一扩展自Action类,而Struts2中可以是一个普通的POJO(Plain Ordinary Java Object)简单的Java对象。线程模型方面,Struts1的Action是单实例的,一个Action的实例处理所有的请求。Struts2的Action是一个请求对应一个实例(每次请求时都新new出一个对象),与Struts1的Action相比没有线程安全方面的问题。除此以外,Struts2和Struts1在Servlet依赖方面、封装请求参数、表达式语言方面等都有不同之处。
2.2 Spring简介
Spring是一个开源框架。Spring可以用于服务器端的开发,而且任何Java应用在简单性、可测试性和松耦合方面都能从Spring中受益。Spring与Struts、Hibernate不同,Spring只是将所有组件部署到Spring中,然后管理、维护、执行那些组件。
Spring最主要的核心思想是IoC(反向控制),或者称为DI(依赖注入)IoC是对传统控制流程的颠覆。编码阶段,系统把实例化对象和设置依赖关系直接交给了Spring,用户只需要面向接口编程。Spring的另一个重要思想是AOP(面向切面编程)。切面编程提供了一种机制,在执行业务的前后执行另外的代码。比较典型的就是Spring里面的AOP拦截器。此外,Spring还有DAO、ORM、Web、MVC等模块。本网上考试系统使用了Spring的IoC模块和AOP模块。
目 录
第一章 绪 论 1
1.1 背景概述 1
1.2 系统开发的目的和意义 1
第二章 技术介绍 2
2.1 Struts2简介 2
2.2 Spring简介 2
2.3 Hibernate简介 2
2.4 AJAX简介 2
2.5 技术路线介绍 3
2.5.1 基于Spring的事务管理 3
2.5.2 基于Hibernate的HQL数据库查询 3
第三章 需求分析 4
3.1 项目简介 4
3.2 功能需求 4
3.2.1 登入模块 4
3.2.2 用户管理模块 4
3.2.3 题库管理模块 4
3.2.4 个人信息管理模块 4
3.2.5 试卷管理模块 5
3.2.6 考试管理模块 5
第四章 系统概要设计和详细设计 6
4.1 概要设计 6
4.1.1 操作流程 6
4.1.2 系统数据结构设计 7
4.1.3 概念结构设计 7
4.1.4 逻辑结构设计 9
4.2 详细设计 11
4.2.1 系统各功能模块 11
第五章 系统的实现与测试 14
5.1 运行环境配置 14
5.2 编码 14
5.3 主要类设计 14
5.3.1 U
*好棒文|www.hbsrm.com +Q: #351916072#
serService层 14
5.3.2 QuestionService层 14
5.3.3 InfoIndexService层 15
5.3.4 CourseService层 15
5.3.5 PaperService层 15
5.3.6 AnswerSheetService层 15
5.4 主要HQL代码 15
5.4.1 增加、删除、修改的HQL语句 16
5.4.2 简单查询的HQL语句 16
5.4.3 使用模糊查询的HQL语句 16
5.4.4 多表查询的HQL语句 16
5.5 系统主要页面展示 17
5.6 测试的目的 19
5.6.1 系统测试 20
结束语 24
致 谢 25
参考文献 26
第一章 绪 论
1.1 背景概述
21世纪是一个以网络为核心的信息时代,相对于网络硬件,承载在其之上的各种软件也扮演着重要的角色。如今,各行各业的信息处理如果缺少了专用或通用的软件,工作效率将会变得低下。基于Java EE框架的网上考试系统针对考试应运而生得软件。它避免了传统考试通过花费大量物力、人力来打印试卷、评卷、统计成绩、成绩分析等繁琐方式,利用计算机网络系统来提供高效、科学的考试服务。在利用计算机网络系统来提供高效、科学的考试服务近十几年来,网上考试系统得到了快速发展,数据库也日渐完善,功能强大的考试系统越来越多。
在系统方面,功能愈渐强大。比如将会实现主观题目的考试和自动评卷,实现在线视频交流、测评、监督,利用视频、音频技术实现一些不能在普通试卷上表达出的动态题目甚至实现一些模拟现实环境的实际应用题目等等。
在应用范围方面,以往的网上考试题目由于技术限制,只能出现简单的客观题。但随着网络视频、音频、3D模拟、人工智能的发展,考试题目的形式越来越多样化,再加上网上考试本身高效、方便、易于管理及统计的优点,越来越多的企事业单位或联盟都将会搭建自己的考试系统及与本行业相关的数据库题库,以便更加高效、便捷的选拔、测试人才。
1.2 系统开发的目的和意义
网上考试系统充分利用现有的网络技术使得考试不拘泥于纸质媒介,可以不受时间、地点等限制。例如:第一,网上考试系统可以根据需要快速生成不同类型的试卷,来满足不同科目的要求,高效而又便捷;第二,网上考试答完后,系统可以自动对试卷进行评阅、排序、统计、评估等为教师提供了高效而深层次的评价信息;第三,避免了传统考试通过花费大量人力、物力来打印试卷、评卷、统计成绩、成绩分析等繁琐方式,利用计算机网络系统来提供高效的考试服务,提高教师的工作效率。
网上在线考试系统可以使用远程教学、远程考试答题的方式,通过网上考试答题来便捷、高效的对学员进行在线测试。避免了传统考试通过花费大量物力、人力来打印试卷、评卷、统计成绩、成绩分析等繁琐方式。
第二章 技术介绍
2.1 Struts2简介
Struts2是一个应用框架,基于MVC设计模式。Struts2继承了Struts1和WebWork的优点,但是Struts2在Struts1的基础上有了很大的改进。比如说在Action的实现方面,Struts1要求必须统一扩展自Action类,而Struts2中可以是一个普通的POJO(Plain Ordinary Java Object)简单的Java对象。线程模型方面,Struts1的Action是单实例的,一个Action的实例处理所有的请求。Struts2的Action是一个请求对应一个实例(每次请求时都新new出一个对象),与Struts1的Action相比没有线程安全方面的问题。除此以外,Struts2和Struts1在Servlet依赖方面、封装请求参数、表达式语言方面等都有不同之处。
2.2 Spring简介
Spring是一个开源框架。Spring可以用于服务器端的开发,而且任何Java应用在简单性、可测试性和松耦合方面都能从Spring中受益。Spring与Struts、Hibernate不同,Spring只是将所有组件部署到Spring中,然后管理、维护、执行那些组件。
Spring最主要的核心思想是IoC(反向控制),或者称为DI(依赖注入)IoC是对传统控制流程的颠覆。编码阶段,系统把实例化对象和设置依赖关系直接交给了Spring,用户只需要面向接口编程。Spring的另一个重要思想是AOP(面向切面编程)。切面编程提供了一种机制,在执行业务的前后执行另外的代码。比较典型的就是Spring里面的AOP拦截器。此外,Spring还有DAO、ORM、Web、MVC等模块。本网上考试系统使用了Spring的IoC模块和AOP模块。
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/rjgc/1327.html