java初学者,在做一个在线java考试题系统,不知具体怎么完成。求助。

在用java做一个在线考试系统,随机抽题遇到了问题,我写了一个随机抽题的方法,不知道在asp按钮中怎么用_百度知道
在用java做一个在线考试系统,随机抽题遇到了问题,我写了一个随机抽题的方法,不知道在asp按钮中怎么用
然后再从相同难易度中随机抽出单选题5个;from TTimu where
timunanyidu=;
List list=timuShitiDAO,首先要确定难易度;
timuShiti,想用按钮点击一下对数据库t_timu表中的试题进行随机抽题.save(timuShiti),int timuId;
TTimuShiti timuShiti=new TTimuShiti();
timuShitiDAO,表中有timu_id,timu_nanyidu(难易度);yuedu&#39,阅读题2个; order by newid()UNION all select top 2* from TTimu where
timuLeixing=&#39,con).java中.setShitiId(shitiId)? public List suiji(int shitiId? UNION all select top 3* from TTimu where
timuLeixing=&#39,timuId};
}我把方法写在了loginServer,设计题1个; order by newid()UNION all select top 2* from TTimu where
timuLeixing=' order by newid()&quot,String timuLeixing)
String sql=&quot.find(
Object con[]={shitiId.setTimuId(timuId);
timuShiti,int timunanyidu你们看看方法对不对;tiankong' order by newid()UNION all select top 1* from TTimu where
timuLeixing=&#39.getHibernateTemplate();danxuan&#39,timu_Leixing(题目类型)等等字段;sheji'
return list,填空题3个。现在不知道方法对不对;
提问者采纳
要求输入;------------ 选择模式 ------------& maxNumber) {
maxNumber = numberArray[i], 并存储到数组变量里
} else { /*
* 其中包函的知识有;t2;/ ;/ 实例控制台输入类 public static void main(String[] args) {
/\ + maxNumber)./ / /*
* 第一步; 我加了一个选择模式的函数
if (choose == 1) { /).println(& numberA / numberArray.S /public class MaxNumber {
private static Scanner input = new Scanner(S/ numberA请定义第 &#39.out,也可以见得楼主确实用心了; &#47.
*/&#47:&quot.in).print(&quot. 计算机随机产生十个数字& 输出结果 } / / 计算机生成
tempNumber = random. 计算机随机生成
Random random = new Random(); 输入, 最大的数; /&#47, 数组 ; 随机生成 1 - 100 的数
System, 输出 .out, 按照题目要求 .util,
看到楼主花了怎么多耐心; / 输出控制台提示
numberArray[i] =计算机生成的第 '&'
int[] numberArray = new int[10], 找这 10 个数当中 ;&#47.out:&quot.println(&); 循环寻找
/ / public static int chooseMode() {
只是没找到方法, 比我们已经记录的 ' /\// 我们先定义一个 可以装 10 个数字的数组
int choose = chooseMode();/&#47. 还大;其中最大的数是; i &lt.print(&
numberArray[i] = tempN&#39.println(& 临时变量
for (int i = 0; i++) { &#47, 我们需要用户输入 10 个数字
*/ 用户手工输入
for (int i = 0; i &lt.length.); + (i + 1) + & i++) { /**
* 选择模式方法
* @return 返回选择的模式的编号
*&#47, 那我们就把当前数 赋给 最大数
*/ i &请选择; 循环输入
S &#47.nextInt(); 个数字:
希望能帮到你;*
* 循环比对:&); 定义一个变量接收最大的数
for (int i = 0;/&#47.nextInt(),写了怎么多判断;*
* 第二步 ;最大数'/ 随机数类
int tempNumber = 0 .nextInt(100) + 1;
System. + (i + 1) + &quot, if 判断语句
*&#47. i++) { /当前数'//t1;);&}最后; 个数字是.println(& + tempNumber):& 赋值
&#47, 如果 &#39.println(&quot: 控制台输入;
int maxNumber = 0, 一个接一个的.R //
System. 用户输入十个数字&
if (numberArray[i] &gt.out, 循环 ;
System, 返回 }
System,如果有什么问题可以 Hi 我
提问者评价
谢了,已经结束了
其他类似问题
为您推荐:
其他1条回答
JAVA的后台,ASP的前台,你太有才了
没有看你的数据库结构,根本无法分析你的拼写是否正确,而且你也没有给全查询语句,这个实在无法帮忙分析了。
按钮中获取到List后你想如何展示?
之前我做过的获取到的List里面是已经生成好的几个QuestModel对象,每个对象里面有题目要求,分值,选项,正确答案等属性。
生成的时候
第一个单元
先生成题号,这个简单,是顺序叠加的
然后生成题目,在题号后生成
第二个单元
选项,顺序生成a.b.c.d.的选项头,后面的答案和题目生成一样,取值方面之前我们设计的是给每个选项一个参考值,然后收集完毕拿这个参考值去与正确答案的参考值比对。比如第三个选项正确,参考值可能是kima,后面的答案也是kima,而不是C。
第三个单元
隐藏的,记录此题目是否已经回答,...
在线考试系统的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Java基础:初学者如何开发出一个高质量的J2EE系统[1]
Java基础:初学者如何开发出一个高质量的J2EE系统[1]
  J2EE学习者越来越多,J2EE本身技术不断在发展,涌现出各种概念,本文章试图从一种容易理解的角度对这些概念向初学者进行解释,以便掌握学习J2EE学习方向。
  首先我们需要知道Java和J2EE是两个不同概念,Java不只是指一种语言,已经代表与微软不同的另外一个巨大阵营,所以Java有时是指一种软件系统的流派,当然目前主要是.NET和Java两大主流体系。
  J2EE可以说指Java在数据库信息系统上实现,数据库信息系统从早期的dBase、到Delphi/VB等C/S结构,发展到B/S(Browser浏览器/Server服务器)结构,而J2EE主要是指B/S结构的实现。
  J2EE又是一种框架和标准,框架类似API、库的概念,但是要超出它们。如果需要详细了解框架,可先从设计模式开始学习。
  J2EE是一个虚的大的概念,J2EE标准主要有三种子技术标准:WEB技术、EJB技术和JMS,谈到J2EE应该说最终要落实到这三个子概念上。
  这三种技术的每个技术在应用时都涉及两个部分:容器部分和应用部分,Web容器也是指Jsp/Servlet容器,你如果要开发一个Web应用,无论是编译或运行,都必须要有Jsp/Servlet库或API支持(除了JDK/J2SE以外)。
  Web技术中除了Jsp/Servlet技术外,还需要JavaBeans或Java Class实现一些功能或者包装携带数据,所以Web技术最初裸体简称为Jsp/Servlet+JavaBeans系统。
  谈到JavaBeans技术,就涉及到组件构件技术(component),这是Java的核心基础部分,很多软件设计概念(设计模式)都是通过JavaBeans实现的。
  JavaBeans不属于J2EE概念范畴中,如果一个JavaBeans对象被Web技术(也就是Jsp/Servlet)调用,那么JavaBeans就运行在J2EE的Web容器中;如果它被EJB调用,它就运行在EJB容器中。
  EJB(企业JavaBeans)是普通JavaBeans的一种提升和规范,因为企业信息系统开发中需要一个可伸缩的性能和事务、安全机制,这样能保证企业系统平滑发展,而不是发展到一种规模重新更换一套软件系统。
  至此,JavaBeans组件发展到EJB后,并不是说以前的那种JavaBeans形式就消失了,这就自然形成了两种JavaBeans技术:EJB和POJO,POJO完全不同于EJB概念,指的是普通JavaBeans,而且这个JavaBeans不依附某种框架,或者干脆可以说:这个JavaBeans是你为这个应用程序单独开发创建的。
  J2EE应用系统开发工具有很多:如JBuilder、Eclipse等,这些IDE首先是Java开发工具,也就是说,它们首要基本功能是可以开发出JavaBeans或Java class,但是如果要开发出J2EE系统,就要落实到要么是Web技术或EJB技术,那么就有可能要一些专门模块功能(如eclipse需要lomboz插件),最重要的是,因为J2EE系统区分为容器和应用两个部分,所以,在任何开发工具中开发J2EE都需要指定J2EE容器。
  J2EE容器分为WEB容器和EJB容器,Tomcat/Resin是Web容器;JBoss是EJB容器+Web容器等,其中Web容器直接使用Tomcat实现的。所以你开发的Web应用程序可以在上面两种容器运行,而你开发的Web+EJB应用则只可以在JBoss服务器上运行,商业产品Websphere/Weblogic等和JBoss属于同一种性质。
  J2EE容器也称为J2EE服务器,大部分时它们概念是一致的。
  如果你的J2EE应用系统的数据库连接是通过JNDI获得,也就是说是从容器中获得,那么你的J2EE应用系统基本与数据库无关,如果你在你的J2EE应用系统耦合了数据库JDBC驱动的配置,那么你的J2EE应用系统就有数据库概念色彩,作为一个成熟需要推广的J2EE应用系统,不推荐和具体数据库耦合,当然这其中如何保证J2EE应用系统运行性能又是体现你的设计水平了。
  衡量J2EE应用系统设计开发水平高低的标准就是:解耦性;你的应用系统各个功能是否能够彻底脱离?是否不相互依赖,也只有这样,才能体现可维护性、可拓展性的软件设计目标。
  为了达到这个目的,诞生各种框架概念,J2EE框架标准将一个系统划分为WEB和EJB主要部分,当然我们有时不是以这个具体技术区分,而是从设计上抽象为表现层、服务层和持久层,这三个层次从一个高度将J2EE分离开来,实现解耦目的。
  因此,我们实际编程中,也要将自己的功能向这三个层次上靠,做到大方向清楚,泾渭分明,但是没有技术上约束限制要做到这点是很不容易的,因此我们还是必须借助J2EE具体技术来实现,这时,你可以使用EJB规范实现服务层和持久层,Web技术实现表现层;
  EJB为什么能将服务层从Jsp/Servlet手中分离出来,因为它对JavaBeans编码有强制的约束,现在有一种对JavaBeans弱约束,使用Ioc模式实现的(当然EJB 3.0也采取这种方式),在Ioc模式诞生前,一般都是通过工厂模式来对JavaBeans约束,形成一个服务层,这也是是Jive这样开源论坛设计原理之一。
  由此,将服务层从表现层中分离出来目前有两种可选架构选择:管理普通JavaBeans(POJO)框架(如Spring、JdonFramework)以及管理EJB的EJB框架,因为EJB不只是框架,还是标准,而标准可以扩展发展,所以,这两种区别将来是可能模糊,被纳入同一个标准了。 但是,个人认为:标准制定是为某个目的服务的,总要牺牲一些换取另外一些,所以,这两种架构会长时间并存。
  这两种架构分歧也曾经诞生一个新名词:完全POJO的系统也称为轻量级系统(lightweight),其实这个名词本身就没有一个严格定义,更多是一个吸引人的招牌,轻量是指容易学习容易使用吗?按照这个定义,其实轻量Spring等系统并不容易学习;而且EJB 3.0(依然叫EJB)以后的系统是否可称为轻量级了呢? [1] &[] &
H3C认证Java认证Oracle认证
基础英语软考英语项目管理英语职场英语
.NETPowerBuilderWeb开发游戏开发Perl
二级模拟试题一级模拟试题一级考试经验四级考试资料
港口与航道工程建设工程法规及相关知识建设工程经济考试大纲矿业工程市政公用工程通信与广电工程
操作系统汇编语言计算机系统结构人工智能数据库系统微机与接口
软件测试软件外包系统分析与建模敏捷开发
法律法规历年试题软考英语网络管理员系统架构设计师信息系统监理师
高级通信工程师考试大纲设备环境综合能力
路由技术网络存储无线网络网络设备
CPMP考试prince2认证项目范围管理项目配置管理项目管理案例项目经理项目干系人管理
Powerpoint教程WPS教程
电子政务客户关系管理首席信息官办公自动化大数据
职称考试题目
就业指导签约违约职业测评
招生信息考研政治
网络安全安全设置工具使用手机安全
3DMax教程Flash教程CorelDraw教程Director教程
Dreamwaver教程HTML教程网站策划网站运营Frontpage教程
生物识别传感器物联网传输层物联网前沿技术物联网案例分析
互联网电信IT业界IT生活
Java核心技术J2ME教程
Linux系统管理Linux编程Linux安全AIX教程
Windows系统管理Windows教程Windows网络管理Windows故障
组织运营财务资本
视频播放文件压缩杀毒软件输入法微博
数据库开发Sybase数据库Informix数据库
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&java(15)
这是一个课程设计的文档,源码及文档数据库我都修改过了,貌似这里复制过来的时候图片不能贴出,下载地址:
数据库原理课程设计说明书
&&&&&&&&&&&&
基于Web在线考试系统的设计与实现
课题背景与意义&
课题开发背景&&
当今社会,考试已经是我们必不可少的东西了,从小到大我们已经考过无数次了,以后还要考,不管是国内还是国外的各大厂家,都在不断的推出一系列的考试、认证。又是要我们去考试。我们国家的自考或是成考,以及各省市的各种考试,现在都在朝着信息化的道路前进在走。我们相信在今后这一系列的考试将会走向网络化考试的。这样才是符合信息技术发展的方向。我们要给不同的考试同一个好的解决方案。这个方案在技术上来讲我们是采用B/S模式。 在windows/Linux平台上,使用IE浏览器,完成抽题、考试、交卷等考试任务。方便,简单的完成各种考试,这也是我们的目的所在。
考点模块通过网络获取题库,按照题库中的抽题策略,自动给每个考生生成一份试卷,考生在线作答,考试结果数据通过网络回收,系统自动进行判分,生成考试成绩和统计数据。“在线考试系统”是集合现代考试理论、方法和现代信息技术手段的智能化网上考试系统,为学生个性化学习提供“灵活、方便、科学、公平”的“个别化考试服务”,是终结性评价系统。学生可以随时、随地进行课程结业考试。
课题开发意义
用Browser/Web模式来设计考试系统比较合适,服务器端我们采用SQL&SERVER数据库系统和JSP组件来构成考试的应用服务系统;客户端采用浏览器来完成考试全过程,同时可进行远程系统维护和管理。利用网络和数据库技术,结合目前硬件价格普遍下跌与宽带网大力建设的有利优势,应用JAVA&Server&Page技术,开发了基于B/S模式多用户在线考试系统这一程序。它运用方便、操作简单,效率很高(同时,它要求计算机配置也很高,尤其是服务器端).基于Web技术的网络考试系统可以借助于遍布全球的因特网进行,因此考试既可以在本地进行,也可以在异地进行,大大拓展了考试的灵活性。试卷可以根据题库中的内容即时生成,可避免考试前的压题;而且可以采用大量标准化试题,从而使用计算机判卷,大大提高阅卷效率;还可以直接把成绩送到数据库中,进行统计、排序等操作。考生通过姓名、准考证号码和口令进行登录,考试答案也存放在服务器中,这样考试的公平性、答案的安全性可以得到有效的保证。因此,采用网络考试方式将是以后考试发展的趋势。
系统需求分析
本系统作为一个在线的考试系统,要求实现网络考试系统的各项基本功能。从维护和安全的角度看,可以把系统设计成B/S模式的,可以让用户通过浏览器直接访问位于服务器上的考试题以及对系统进行远程维护。
&&&& 系统前台主要有考生注册和登录模块、在线考试模块、查询成绩模块以及退出登录等;系统后台主要有考生信息、考题信息、考试成绩信息、考试套题和课程信息等管理模块。其中
&&&& (1)注册和登录模块
&&&& 考生要进入考试系统,首先需要注册一个学生证号。在注册页中输入考生的基本信息,包括学生证号、学生姓名、密码、密码问题、问题答案、性别和所学专业等。其中为防止注册的学生证号重复,在这里应用了AJAX无刷新检测用户名的技术。登录只需核实注册信息即可。
&&&& (2)在线考试
&&&& 当考生准备考试时,首先需要阅读考试规则,在同意所列出的考试规则的前提下,才能选择专业和考试课程,然后才能进入考试页面开始答题。当考生提交试卷或者到达考试结束时间,系统将自动对考生提交的试卷进行评分,并给出最终成绩。
&&&& (3)考试套题管理
&&&&& 考试套题管理主要包括对考试题进行添加、查询、修改和删除操作。
&&&& (4)考试题目管理
&&&& 考试题目管理主要包括对考试题进行添加、查询、修改和删除操作。除此之外,根据实际需要,还可以对数据库中的信息(学生信息、试题)进行维护。
&&& 要求:
&& ①操作简单方便、界面简洁美化。
&& ②具有实时性,已注册的用户无论身处在何地,通过Internet浏览器,都可登录考试系统进行考试。
&& ③系统提供的自动交卷功能使考试到结束时间时,系统自动交卷。
&& ④提供考试时间倒计时功能,让考生随时了解考试剩余时间。
&& ⑤考生可以随时查看成绩。
&& ⑦对考生注册信息进行管理。
&& ⑧系统自动交卷、阅卷,保证成绩真实,准确。
&& ⑨系统运行稳定、安全。
选择MySql作为后台的数据库,选择myeclipse作为应用程序开发工具,应用JAVA、JSP、JavaScript、Html、Tomcat服务器技术,整个系统完全基于B/S (Browser/Server)模式进行设计,采用strus框架进行架构。
在开发网络在线考试系统时,需要具备下面的软件环境:
a)&操作系统:Windows8.1。&
b)&Web服务器:Tomcat7.0。&
c)&Java开发包:JDK1.7。&
d)& 开发工具:myeclipse2015。
e)&数据库:MySQL及其图形化管理工具SQLyog。&
f)&浏览器:火狐游览器。&
结构开发思想
B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层(3-tier)结构。一个三层架构的应用程序由三部分组成,这三部分各自分布在网络中的不同地方。这三个部分分别是:工作站或表示层接口、事务逻辑、数据库以及与其相关的程序设计。在一个典型的三层架构应用程序中,应用程序的用户工作站包括提供图形用户界面(GUI)的程序设计和具体的应用程序入口表格或交互式窗口。
以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
面向对象机制的设计思想
所有计算机均由两种元素组成:代码和数据。精确的说,有些程序是围绕着&什么正在发生&而编写,有些则是围绕&谁正在受影响&而编写的。
第一种编程方式叫做&面向过程的模型&,按这种模型编写的程序以一系列的线性步骤(代码)为特征,可被理解为作用于数据的代码。如 C 等过程化语言。
第二种编程方式叫做&面向对象的模型&,按这种模型编写的程序围绕着程序的数据(对象)和针对该对象而严格定义的接口来组织程序,它的特点是数据控制代码的访问.通过把控制权转移到数据上,面向对象的模型在组织方式上有:抽象、封装、继承和多态的好处。
代码分层思想
由于采用B/S设计模式分层思想,同时根据软件工程的管理思想及系统分析的设计与分析的思想进行系统的开发,利用Java语言开发Web应用程序,提供String+Hibernate+Spring框架对系统的程序代码结构进行分层。分层的策略如下:
图1 &Struts-Spring-Hibernate架构
系统功能结构设计
根据网络在线考试系统的特点,可以将其分为前台和后台两个部分进行设计。前台主要用于考生注册和登录系统、在线考试、查询成绩以及修改个人资料等;后台主要用于管理员对考生信息、课程信息、考题信息和考生成绩信息等进行管理。& 网络在线考试系统的前台功能如图2所示:
图2 系统前台功能图
网络在线考试系统的后台功能结构如图3所示:
图3& 系统后台功能图
业务流程图设计
网络在线考试的系统业务流程如图4所示:
图4& 系统业务流程图
数据库设计
数据库概念设计
根据对系统所做的需求分析和系统设计,规划出本系统中使用的数据库实体分别为考生档案实体、管理员档案实体、课程档案实体、套题实体、考试题目实体和考生成绩实体。&
考生档案实体&
考生档案实体包括编号、姓名、密码、性别、注册时间、提示问题、问题答案、专业和身份证号属性。考生档案实体的E-R图如图5所示:
图5 考生档案实体的E-R图
管理员档案实体&
管理员档案实体包括编号、管理员名、管理员密码属性。管理员档案实体的E-R图如图6所示:
&&&&&&&&&&&&&&&&&&& &图6& 管理员档案实体的E-R图
课程档案实体&
课程档案实体包括课程编号、课程名、添加时间属性。课程档案实体的E-R图如图7所示:
图7 课程档案实体的E-R图
考试题目实体&
考试题目实体包括编号、问题类型、所属课程、所属套题、选项A、选项B、选项C、选项D、添加时间、正确答案和备注等属性。考试题目实体的E-R图如图8所示:
图8 考试题目实体的E-R图
考生成绩实体&
考生成绩实体包括编号、准考证号、所属课程、单选题分数、多选题分数、合计分数、添加时间属性。考生成绩实体的E-R图如图9所示:
图9& 考生成绩实体的E-R图
数据库逻辑设计
(管理员信息表)&
管理员信息表用来保存管理员信息,该表的结构如表1所示:
表1 &tb_stuResult表的结构
(考生信息表)&
考生信息表用来保存考生信息,该表的结构如表2所示:
表2 &tb_Student表的结构
(考生成绩信息表)&
考生成绩信息表用来保存考生成绩,该表中的所属课程字段whichLesson与tb_Lesson表中的Name字段相关联,并且设置为级联更新。考生成绩信息表的结构如表3所示:
表3 &tb_stuResult表的结构
(套题信息表)&
套题信息表用来保存套题信息,该表中保存着所属套题ID,套题名称,套题所属课程以及套题的添加时间信息。该表的结构如表4所示:
表4& tb_TaoTi表的结构
(课程信息表)&
课程信息表用来保存课程信息,该表中保存着所属课程的ID,课程名以及课程的添加时间信息。该表的结构如表5所示:
表5& tb_Lesson表的结构
(考试题目信息表)&
考试题目信息表用来保存考试题目信息。考试题目信息表的结构如表6所示:
表6& tb_Questions表的结构
数据表关系设计
本系统设计了如图10所示的数据表之间的关系,该关系实际上也反映了系统中各个实体之间的关系。
图10 数据表之间的关系图
前台首页模块设计
考生通过“考生登录”模块的验证后,可以登录到网络在线考试的前台首页,如图11所示。前台首页主要用于实现前台功能导航,在该页面中只包括在线考试、成绩查询、修改个人资料和退出4个导航链接。
由于本系统的前台首页主要用于进行系统导航,所以在实现时,采用了为图像设置热点的方法,这样可以增加页面的灵活度,使页面不至于太枯燥。下面将对如何设置图像的热点进行详细介绍。为图像设置热点,也可以称作图像映射,是指一幅图像可以建立多个超链接,即在图像上定义多个区域,每个区域链接到不同的地址,这样的区域称为热点。& 图像映射有服务器端映射(Server-side-Image&Map)和客户端映射(Client-side-Image&Map)两种。目前使用最多的是客户端映射,因为客户端映射使图像上对应的坐标以及超链接的URL地址都在浏览器读入,省去和服务器之间互传坐标和URL的时间。
图11前台首页图
考生信息模块设计
考生信息模块主要包括考生注册、考生登录、修改个人资料以及找回密码等四个功能。考生首先要注册成为网站用户,然后才能被授权登录网站进行一系列操作的权限;登录后考生还可以修改个人的注册资料。如果考生忘记了登录密码,还可以通过网站提供的找回密码功能快速找回密码。考生信息注册模块的系统如图12所示:
图12 考生信息注册图
考生信息模块的Action实现类Student继承了Action类。在该类中,首先需要在该类的构造方法中分别实例化考生信息模块的StudentDAO类。Action实现类的主要方法是execute(),该方法会被自动执行,这个方法本身没有具体的事务,它是根据HttpServletRequest的getParameter()方法获取的action参数值执行相应方法的。
在线考试模块设计
在线考试模块的主要功能是允许考生在网站上针对指定的课程进行考试。在该模块中,考生首先需要阅读考试规则,在同意所列出的考试规则后,才能选择考试,在选择考试课程后,系统将随机抽取试题,然后进入考试页面进行答题,当考生提交试卷或者到达考试结束时间时,系统将自动对考生提交的试卷进行评分,并给出最终考试成绩。在线考试模块的系统流程如图13所示:
图13 在线考试流程图
考生登录到网络在线考试的前台首页后,单击“在线考试”超链接,将进入到考试规则页面,在该页面中单击“同意”按钮,即可进入到选择考试课程页面,在该页面中将以下拉列表框的形式显示需要参加考试的课程.在该页面中,单击“开始考试”按钮,将关闭当前窗口,并打开新的窗口显示试题,如图14所示:
图14 考试试题图
考试题目管理模块设计
网络在线考试系统的后台首页是管理员对网站信息进行管理的首页面。在该页面中,管理员可以清楚地了解网站后台管理系统包含的基本操作。
a)管理员信息管理:主要包括管理员信息列表、添加管理员、修改管理员和删除管理员。
b)考生信息管理:主要包括查看注册考生信息列表和删除已注册的考生信息。
c)考生成绩查询:主要用于根据准考证号、考试课程或考试时间模糊查询考生成绩。
d)课程信息管理:主要包括查看课程列表、添加课程信息和删除课程信息。
e)套题信息管理:主要包括查看套题信息列表、添加套题信息、修改套题信息
和删除套题信息。
f)考试题目管理:主要包括查看考试题目列表、添加考试题目、修改考试题目
和删除考试题目。
g)退出管理:主要用于退出后台管理系统。
为了方便管理员管理,在网络在线考试系统的后台首页中显示考生成绩查询页
面,其运行结果如图15所示:
图15 后台首页图
管理员登录系统后,单击“考试题目管理”超链接,进入到查看考试题目列表页面,在该页面中单击“添加考试题目”超链接,进入到添加考试题目页面。在该页面的“属性课程”下拉列表框中选择“计算机专业英语”,在“所属套题”下拉列表框中将显示该课程对应的套题名称。添加考试题目页面的运行结果如图16所示:
图16添加考试题目图
软件开发技术概述&
Ajax技术是Asynchronous&JavaScript&and&XML的缩写,意思是异步的JavaScript&和XML。Ajax并不是一门新的语言或技术,它是JavaScript、XML、CSS、DOM等多种已有技术的组合,它可以实现客户端的异步请求操作。这样可以实现在不需要刷新页面的情况下与服务器进行通信的效果,从而减少了用户的等待时间。&
通过Ajax技术实现计时与显示剩余时间&
&在通过Ajax技术实现计时与显示剩余时间,首先需要创建一个封装Ajax必须实现的功能的对象AjaxRequest,并将其代码保存为AjaxRequest.js,然后在开始考试页面中包含该文件,具体代码如下:&&script&language=“javascript”&src=“..//JS/AjaxRequest.js”&&/script&&由于通过Ajax技术实现计时与显示剩余时间表的方法类似,下面以实现自动计时为例进行介绍。& 编写调用AjaxRequest对象的函数、错误处理函数和返回值处理函数。
计时方法showStartTime()中,首先需要获取保存在Session中的考试开始时间,并将其转化为对应的毫秒数,然后获取当前时间的毫秒数;再应用这两个时间生成两位的小时数、分钟数和秒数,并组合为新的时间;最后将其保存到showStartTime参数中,并转到输出计时时间的页面。
[1]&刘东祥.动态网页JSP技术探究[J].时代教育,-17.&
[2]&何文辉.基于JSP的动态网站开发技术[J].吉林省教育学院学报,-20.&
[3]&郭利周,于长虹,郭晓萍.基于的网上考试安全体系的设计与构建[J].洛阳师范学院学 报,-28.&
[4] 张洪伟.Tomcat Web开发及整合应用[M].北京.清华大学出版社. -230
[5]&周玫,袁振武.浅谈在线考试系统[J].科技广场,-14.&
[6]&覃远霞.在线考试系统的设计与运用[J].应用科学,-36.
[7]&四维科技,杨易编著.JSP网络编程技术与案例[M].北京:人民邮电出版社,2006.&
[8] 范云之.基于Web数据库在线考试系统的设计与实现研究[J].商丘师范学院学报第22卷第5期 -20
[9]&刘中兵,李伯华,邹晨编著.JSP数据库项目案例导航[M].北京:清华大学出版社,2013.&
[10]&覃远霞.在线考试系统的设计与运用[J].应用科学,-36.
[11] Bruce Eckel.Java编程思想[M].北京.机械工业出版社. -280 [12] (美)舒尔第.Java2-The complete reference[M].北京.电子工业出版社. -100
[13] (美)Marty Hall.Servlet与JSP权威指南[M].北京v机械工业出版社. -350
[14](美)Marty Hall.JavaScript高级程序设计[M].北京.人民邮电出版社. -200
[15](美)DavidFlanagan.JavaScript权威指南[M].北京.机械工业出版社. -200
CREATE DATABASEdb_exam;
USE `db_exam`;
CREATE TABLE`tb_lesson` (
& `ID` INT(11) NOT NULL AUTO_INCREMENT,
& `Name` VARCHAR(60) DEFAULT NULL,
& `JoinTime` DATETIME DEFAULT NULL,
& PRIMARY KEY (`ID`)
) ENGINE=INNODBAUTO_INCREMENT=34 DEFAULT CHARSET=utf-8;
INSERT& INTO `tb_lesson`(`ID`,`Name`,`JoinTime`)VALUES (4,'数据库原理',' 00:00:00'),(5,'计算机文化基础','0:00:00'),(8,'计算机专业英语',' 00:00:00'),(29,'嵌入式系统',' 00:00:00'),(31,'物联网体系结构','0:00:00'),(33,'接口与通信技术','
10:29:10');
CREATE TABLE`tb_manager` (
& `ID` INT(11) NOT NULL AUTO_INCREMENT,
& `name` VARCHAR(30) DEFAULT NULL,
& `PWD` VARCHAR(30) DEFAULT NULL,
& PRIMARY KEY (`ID`)
) ENGINE=INNODBAUTO_INCREMENT=15 DEFAULT CHARSET=utf8;
INSERT INTO`tb_manager`(`ID`,`name`,`PWD`) VALUES (1,'admin','admin'),(2,'tf111','tf111');
CREATE TABLE`tb_questions` (
& `id` INT(11) NOT NULL AUTO_INCREMENT,
& `subject` VARCHAR(50) DEFAULT NULL,
& `type` CHAR(6) DEFAULT NULL,
& `joinTime` DATETIME DEFAULT NULL,
& `lessonId` INT(11) DEFAULT NULL,
& `taoTiId` INT(11) DEFAULT NULL,
& `optionA` VARCHAR(50) DEFAULT NULL,
& `optionB` VARCHAR(50) DEFAULT NULL,
& `optionC` VARCHAR(50) DEFAULT NULL,
& `optionD` VARCHAR(50) DEFAULT NULL,
& `answer` VARCHAR(10) DEFAULT NULL,
& `note` VARCHAR(50) DEFAULT NULL,
& PRIMARY KEY (`id`)
) ENGINE=INNODBAUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
INSERT INTO`tb_questions`(`id`,`subject`,`type`,`joinTime`,`lessonId`,`taoTiId`,`optionA`,`optionB`,`optionC`,`optionD`,`answer`,`note`)VALUES (37,'数据库原理的老师是谁?','单选题',' 01:00:00',5,10,'常赞杰','陈利平','姜平','以上都不是','B','空'),(39,'网络营销的发展经历几个阶段?','单选题','
00:00:00',29,17,'2个','3个','5个','6个','C','空'),(40,'Internet提供的基本服务有哪些?','多选题','0:00:00',29,17,'E-mail','FTP','Telnet','WWW','A,B,C,D','空'),(48,'EPROM代表什么?','单选题',' 00:00:00',8,19,'可编程存储器','可擦可编程存储器','只读存储器','可擦可编程只读存储器','D',''),(49,'对于WWW的正确解释有哪些?','多选题','
00:00:00',8,19,'全球网','万维网','局域网','WorldWide Web的缩写','A,B,D','');
CREATE TABLE`tb_student` (
& `ID` VARCHAR(16) DEFAULT NULL,
& `name` VARCHAR(20) DEFAULT NULL,
& `pwd` VARCHAR(20) DEFAULT NULL,
& `sex` VARCHAR(2) DEFAULT NULL,
& `joinTime` DATETIME DEFAULT NULL,
& `question` VARCHAR(50) DEFAULT NULL,
& `answer` VARCHAR(50) DEFAULT NULL,
& `profession` VARCHAR(30) DEFAULT NULL,
& `cardNo` VARCHAR(18) DEFAULT NULL
) ENGINE=INNODBDEFAULT CHARSET=utf8;
INSERT& INTO `tb_student`(`ID`,`name`,`pwd`,`sex`,`joinTime`,`question`,`answer`,`profession`,`cardNo`)VALUES ('CN01','王大锤','111','男','0:00:00','birthday','717','广告学','********'),('CN02','何小花','111','女','
00:00:00','birthday','1','计算机应用软件','********'),('CN05','戴小超','111111','女',' 00:00:00','我最喜欢的颜色','蓝灰色','计算机应用软件','220104************'),('CN06','熊时雨','000','男',' 00:00:00','你好','你好','公司管理','20020'),('CN07','朱培','111111','男','
00:00:00','你好','你好','编程','52200');
CREATE TABLE`tb_sturesult` (
& `id` INT(11) NOT NULL AUTO_INCREMENT,
& `stuId` VARCHAR(16) DEFAULT NULL,
& `whichLesson` VARCHAR(60) DEFAULT NULL,
& `resSingle` INT(11) DEFAULT NULL,
& `resMore` INT(11) DEFAULT NULL,
& `resTotal` INT(11) DEFAULT NULL,
& `joinTime` DATETIME DEFAULT NULL,
& PRIMARY KEY (`id`)
) ENGINE=INNODBAUTO_INCREMENT=43 DEFAULT CHARSET=utf8;
INSERT& INTO`tb_sturesult`(`id`,`stuId`,`whichLesson`,`resSingle`,`resMore`,`resTotal`,`joinTime`)VALUES (1,'CN02','计算机专业英语',50,30,80,'0:00:00'),(2,'CN01','物联网体系结构',0,20,20,'0:00:00'),(4,'CN01','数据库原理',20,30,50,'0:00:00'),(12,'CN01','计算机专业英语',40,60,100,'0:00:00'),(14,'CN05','嵌入式系统',40,0,40,'0:00:00'),(29,'CN02','接口与通信技术',40,60,100,'0:00:00'),(30,'CN06','数据库原理',40,60,100,'0:00:00'),(37,'CN07','计算机文化基础',0,0,0,'0:00:00'),(38,'CN07','数据库原理',40,60,100,'0:00:00'),(39,'CN06','嵌入式系统',0,0,0,'0:00:00'),(40,'CN01','数据库原理',0,0,NULL,NULL),(41,'CN02','接口与通信技术',0,0,NULL,'
11:43:15'),(42,'CN02','计算机文化基础',40,0,40,' 13:10:12');
CREATE TABLE`tb_taoti` (
& `ID` INT(11) NOT NULL AUTO_INCREMENT,
& `Name` VARCHAR(50) DEFAULT NULL,
& `LessonID` INT(11) DEFAULT NULL,
& `JoinTime` DATETIME DEFAULT NULL,
& PRIMARY KEY (`ID`)
) ENGINE=INNODBAUTO_INCREMENT=21 DEFAULT CHARSET=utf8;
INSERT& INTO`tb_taoti`(`ID`,`Name`,`LessonID`,`JoinTime`) VALUES (10,'2015数据库期末考试',5,'0:00:00'),(17,'2015年嵌入式期末考试题',29,'0:00:00'),(19,'2015年物联网体系结构考试题',8,'0:00:00'),(20,'接口与通信期末考试题',31,' 00:00:00');
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:156584次
积分:2623
积分:2623
排名:第9626名
原创:89篇
转载:14篇
评论:55条
文章:12篇
阅读:77249
文章:19篇
阅读:42182
文章:30篇
阅读:21622
(3)(15)(6)(7)(9)(7)(14)(26)(15)(1)}

我要回帖

更多关于 java考试题 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信