(信号与信息处理专业论文)网络考试系统的研究与实现.pdf_第1页
(信号与信息处理专业论文)网络考试系统的研究与实现.pdf_第2页
(信号与信息处理专业论文)网络考试系统的研究与实现.pdf_第3页
(信号与信息处理专业论文)网络考试系统的研究与实现.pdf_第4页
(信号与信息处理专业论文)网络考试系统的研究与实现.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(信号与信息处理专业论文)网络考试系统的研究与实现.pdf.pdf 免费下载

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

文档简介

网络考试系统的研究与实现 摘要 随着计算机技术和互联网技术的发展,传统的教育也随之发生变 化,网络教学已经成为全球性的大趋势。网络考试系统是现代网络教 学中的重要组成部分,研究网络考试系统有利于提高网络教学的质量 和效率。 网络考试系统是北京邮电大学网络教学平台的一个子项目,是为 了促进学校教育的网络化、知识的共享化而推进的一个软件项目。本 论文在对网络考试系统涉及的关键技术和理论进行深入研究的基础 上,详细阐述了一个智能化考试系统的设计与实现。 本系统的体系结构采用三层b s s 结构,即b r o w s e r w e bs e r v e r d a t eb a s es e r v e r ,三层结构具有客户端精简、业务逻辑扩展方便等 优势,本系统数据库采用o r a c l e ,在中间层采用的技术主要有j s p 、 j a v a b e a n 和j d b c ;系统实现了三个功能模块,即试题管理模块、 在线考试模块、自动评分模块,试题管理模块包括上传试题、试题管 理、自动组卷和试卷管理;在线考试模块学生登录、考试鉴权、在线 考试时间控制和考试故障处理;自动评分模块包括制定评分规则和自 动评分算法。 本次课题的重点是主观题自动评分算法的研究,主观题的自动评 分属于人工智能自然语言理解的范畴,论文详细阐述了人工智能的相 关理论在自动评分中的应用。在处理文本信息时,文本模型采用了向 量空间模型( v e c t o rs p a c em o d e lv s m ) ;在分词方法中结合使用最大 概率分词法和最大匹配分词法两种方法;在知识表示方面采用框架知 识表示法;主观题的自动评分包括:分词算法、特征向量提取、权重 设定以及矢量匹配算法。 关键词:网络考试系统三层结构j s p 自动评分分词算法v s m t h es t u d ya n di 口l e m e n t a t i o no f t h eo n l i n ee x a n a t i o ns y s t e m a b s t r a c t a l o n gw i t ht h ed e v e l o p m e n t o ft h e c o m p u t e ra n di n t e r n e t ,t h e t r a d i t i o n a le d u c a t l o ni s u n d e r g o i n g a g r e a tc h a n g ea n dt h e n e t w o r k e d u c a t i o nh a sb e e n v e r yp o p u l a r a r o u n dt h ew o r l d s i n c eo n l i n e e x a m i n a t i o ns y s t e mi so n eo ft h e k e yc o m p o n e n t s i nt h en e t w o r k e d u c a t i o n ,t os t u d ya n dr e s e a r c ho f i tc o n t r i b u t e st oi m p r o v et h eq u a l i t y a n d e f f i c i e n c yo f t h en e t w o r ke d u c a t i o n 1 1 1 e “o n l i n ee x a m i n a t i o ns y s t e m ( o e s ) ”i so n eo ft h es u b - p r o j e c t s 醴t h e “b u p tn e t w o r ke d u c a t i o np l a t f o r m ”,w h i c hi so f g r e a tb e n e f i t t o t h en e t w o r ke d u c a t i o no ft h i su n i v e r s i t y b a s e do nt h ed e e ps u r v e ya n d s t u d y o ft h e k e yo e sr e l a t e dt e c h n o l o g i e s a n dt h e o r i e s ,t h i s p a p e r d e s c r i b e st h e d e s i g na n di m p l e m e n t a t i o n o f t h ei n t e l l i g e n to e s t h eo e si s d e v e l o p e di n t h e v e r yp o p u l a ra n da d v a n c e db s s a r c h i t e c t u r e ( b r o w e r w e b s e v e r d a t eb a s es e v e r ) ,w h i c hh a sm a n y a d v a n t a g e s ,s u c ha st h es i m p l ec l i e n ta n dw ec o u l dc h a n g et h es e r v i c e v e r ye a s i l y o r a c l ed a t eb a s ei s u s e di nt h eo e sa n dt h ej a v ar e l a t e d t e c h n i q u e s ( j s p 、j a v a b e a n 、j d b c ) i su s e d i nt h em i d d l el a y e r t h i s s y s t e m i n c l u d e st h e q u e s t i o nm a n a g e m e n t m o d u l e ,t h eo n l i n e e x a m i n a t i o nm o d u l ea n dt h e a u t o m a r k i n g m o d u l e t h e q u e s t i o n m a n a g e m e n t m o d u l ei n c l u d e st h eu p l o a do ft h eq u e s t i o n s ,t h ea u t o b u i l d o fm e p a p e r sa n d t h em a n a g e m e n to ft h ep a p e r s t h eo n l i n ee x a m i n a t i o n m o d u l ei n c l u d e st h ei d e n t i f i c a t i o no ft h es t u d e n t sa n dt i m em a n a g e m e n t 砀ea u t o m a r k i n gm o d u l ei n c l u d e st h er u l e sm a d ea n da u t o m a r k i n g a l g o r i t h m a u t o - m a r k i n ga l g o r i t h mi s t h ek e yp a r ti nt h i ss y s t e m ,w h i c hi sa p r o b l e m i nt h ea r t i f i c i a li n t e l l i g e n c e ( 触) f i e l da n di sa na p p l i c a t i o no f t h en a t u r a ll a n g u a g ep r o c e s s i n g ( n l v ) t h ev e c t o rs p a c em o d e l ( v s m ) , t h em a x i m u mm a t c hb a s e da p p r o a c ht ow o r ds e g m e n t a t i o na l g o r i t h m a n dt h ep r o b a b i l i t yb a s e da p p r o a c ht o b r ds e g m e n t a t i o na l g o r i t h mi s u s e di nt h i ss y s t e m n l ei n t e g r a t e da u t o m a r k i n ga l g o r i t h mi n c l u d e st h e s e g m e n t a t i o na l g o r i t h m ,t h ee x t r a c t i o n o f t h e k e yw o r d s ,t h ee v a l u a t i o no f t h ew e i g h t ,a n dt h ev e c t o rm a t c h a l g o r i t h m k e yw o r d s :o n l i n ee x a m i n a t i o ns y s t e m t h r e e l a y e ra r c h i t e c t u r e j s p a u t o - m a r k i n g w o r d s e g m e n t a t i o na l g o r i t h m 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在年解密后适用本授权书。非保密论 文注释: 本人 导师 北京邮电大学硕士论文 网络考试系统的研究与实现 第一章网络考试系统概述 1 1 课题背景及研究意义 1 1 1 课题背景 随着2 l 世纪的到来,一个崭新的信息时代已经展现在我们面前。在计算机 技术和互联网技术迅猛发展的同时,传统教育也随之发生变化。网络教学已经成 为全球性的大趋势,具体表现在:发展基于互联网的远程开放式教育已越来越多 地成为政府行为,网络教育已经成为各级各类学校的一种重要教育手段。 网络考试系统是网络教学不可或缺的重要部分,研究网络考试系统有利于实 现考试的规范化、科学化、系统化。传统考试要求教师人工出试卷、安排考试、 监考、收集试卷、评改试卷和分析试卷。传统考试存在着一些弊端,如:难以正 确把握试卷难度,试卷印刷费工费时,考试造成大量纸张的浪费,人工判卷容易 导致误差,组织一次考试既漫长又复杂。这些弊端的存在使得传统考试越来越不 适应现代教学的需要。因此,如何使考试过程交得方便、高效、快捷、公正,是 现代教育的一个重要课题。 该课题是北京邮电大学网络教学平台的子项目,是为了促进学校教育的网络 化、知识的共享化而推进的一个软件项目。此项目是针对目前学校教学资源及管 理分散、学生课程学习受限及网络服务欠缺等情况而开展的,力图改进教学和学 习的方法。 1 1 2 研究意义 发展网络教学有着非常深远的意义,教育部在“面向2 1 世纪教育振兴行动 计划”中决定,实施现代远程教育工程,在未来的三年,中央政府将集中投入相 当数量的资金,并广泛吸取地方、企业、个人的资金和力量共同完成现代远程教 育框架的构建。 信息技术发展的深度和广度决定了网络教育的深度和广度。因此发展网络教 育迫切需要对相关的新技术和关键技术进行研究,探索符合我国国情的网络教育 的模式、规范和标准,研究开发一批具有自主知识产权的网络教育软硬件支持系 统,并建设不同层次的网络教育示范工程和网络教育资源,为构建国家现代化教 育框架提供坚实的基础。 考试是网络教学的重要部分,日渐普及的网络教学呼唤着功能强大的网络考 试系统的出现。网络考试系统方便了传统考试中的各个环节。在试题管理方面, 北京邮电大学硕士论文网络考试系统的研究与实现 网络考试系统利用数据库技术,提高了试题管理的自动化、标准化、便捷化,也 提高了试题的安全性和保密性;在考试过程中,电子试卷自动发放,具有时间提 示、分数提示等功能,并且在考试结束时自动交卷;在评分判卷部分,计算机可 以方便快速地对客观题评分,并且可以利用自然语言理解技术对主观题进行评 分:在成绩统计方面,可以方便快捷地实现成绩统计,如各种均值,方差,分布 等的计算,同时还可以方便地评判考试的信度和效度。 1 2 国内外发展概况 网络教学在全世界范围内得到了迅速的发展。在国外,美国每年大约有近 1 ,7 0 0 万人通过网络接受教育和培训;欧洲网络教育规模也很大,巨大的需求推 动了网上教育业的快速发展。目前,在国际市场上比较著名的网上教育软件产品 有:l o t u s 公司l e a m i n g s p a c e ,英属哥伦比亚大学计算机科学系开发的w e b c t , w b t s y s t e m 公司的t o p c l a s s 和加拿大s i m o n f r a s e r 大学开发的r t u a l u 等。 美国的n t u 、英国的o p e nc o l l e g e 都是十分典型的网络教育示例。 整体来说,国外的网上考试系统有一定的优势,但在一定范围内的考试采用 的技术还停留在局部范围内基于c l i e n t s e r v e r 结构的应用程序,真正应用性很好 的考试管理工具也还没有出现。 目前国际上网络教育发展的趋势向双模式的方向发展,即采用虚拟校园和实 际学校相结合的方式。从技术上看将以增强网络学习的交互性为主,例如网络授 课、虚拟实验、网络课程制作、教育代理工具。在学习中突出协同学习、团队学 习。在管理上体现出对学生的学习行为管理、智能的网络课程管理等。目前各国 都在加紧研制新一代远程教学系统,它的目标是提供更好的系统交互能力、网络 服务质量和系统可扩展性。新一代的远程教学系统将在i n t e r n e t 上运行动态实时 多媒体信息,实现虚拟沉浸式交互环境,通过广域网大规模地进行实时网上授课 和优质课程的视频点播。新一代远程教学系统的网络传输结构将具有很强的可扩 展性和不同系统间的互操作性。教育信息内容从简单的文件系统组织向教育信息 资源库建设发展,从以课程教学内容向以学科体系为出发点构建教学内容过渡。 学习软件将体现学习者主动学习、个性化学习和探索性学习的新型教学思想。网 络教育软件组件库技术和课件自动生成工具将使得规模化和产业化制作网络教 育软件产品成为可能。教学过程监督、管理、评价和网络教育系统的组织、实施、 安全控制、管理将得到一体化设计和实施。 许多国际组织和机构已被视为网络教育的先驱。其中赢利性机构如菲尼克斯 大学、c a l i b e r 教育网络公司;美国州政府和系统性区域组织如加利福尼亚虚拟 北京邮电大学硕士论文网络考试系统的研究与实现 大学、密执安虚拟大学;美国地区联盟如西部州长大学、南部地区电子学校:其 他国际机构和组织如英国开放大学、香港公开大学、澳大利亚开放教育机构、开 放教学服务机构;网络教育机构如跨国教育( g a t e ) 全球联盟、加拿大远程教学 协会、澳大利亚开放和远程教学协会、美国远程教学协会、西方教育通信合作组 织等。 在国内,1 9 9 6 年国家批准清华大学、北京邮电大学、浙江大学和湖南大学 四所院校进行网上大学试点,并初步取得了成功。随后国家又批准了4 0 余所院 校开展远程教育。国内许多大学在开展本校网上教育的同时开发了一些网上教学 支持平台,特别是一些支持教学的智能工具和效率工具。但在对现有的网上大学 进行了解后,发现整个教学环节中考试管理相对薄弱。网上考试只限于一些小型 的自测,大规模的考试还是基本保留在教室中。 纵观国内外网络考试系统,它们大多采用s q ls e r v e r 、a c c e s s 和m y s q l 作为为后台数据库,在结构上采取b s 、c s 两层开发模式,在评分系统中主要 支持客观题的自动评分,没有对主观题的自动评分进行研究和开发,从而对系统 的功能和实用性带来了定制约。本项目力图实现一个智能化的实用性强的网络 教学平台体系。 1 3 北京邮电大学网络考试系统方案简介 1 3 1 课题目标 , 本课题的目标是实现一个完整的考试系统,包括陋库管理、试题组卷、在线 考试、自动评分等功能3 其中硒塞鲍重盛墨查线垄这狸主观题的自麴迁筮a 下面 是各个模块所要实现的功能: 1 、题库管理模块 试题库的开设:只有本校教师,并且已经开设了网上课程之后,才能建 立试题库:试题按题型分别存放在不同的试题库。 试题库知识点的设置:必须按照统一的级别或代码的规定设置知识点。 试题的输入、修改、删除。试题输入时,同时设置每道题的参数。 2 、试卷管理模块 自动生成试卷:设定好科目,知识点,题量、分数、难度等参数后自动 生成试卷。 如果对于抽取得试题不满意,可以人工或自动调整。 北京邮电大学硕士论文网络考试系统的研究与实现 试卷的搜索,修改。 3 、在线考试模块 在考试安排中设定考生的考试时间,只有在该时间内考生才能答题。 考生不能重复答题。 试卷卷面可以反映出试题的整体情况和考试进行的情况( 时间和题量) 。 可以任意选择试题进行回答。 可以修改已经做过的试题答案。 考试自动计时,考试时可以看到剩余时间。 考试结果可由考生主动交卷或到时间自动保存,遇到紧急情况或异常情 况可恢复到异常之前的考卷继续考试。 4 、自动评分模块 制定评分规则。 自动评分。 1 3 2 网络考试系统所涉及到的主要技术 网络平台系统的采用基于w e b 的三层结构,即c l i e n t 客户层,s e v e r 服务器 层及中间层。此种结构中,客户端完全使用w w w 浏览器,无需安装其他软件, 可以使用a p p l e t 等j a v a 程序或a c t i v e 组件来增强客户端的处理能力:对于业务 逻辑端,采用s u n 公司的j 2 e e 。 系统所用到的主要技术有j s p 、j a v a b e a n 、j a y a s c r i p t 以及自然语言理 解技术。其中j s p ( j a v as e r v e rp a g e s ) 技术可以满足动态网站开发的四大需求: 1 ) 能够在任何w e b 或应用程序服务器上运行;2 ) 分离了应用程序的逻辑和页 面显示:3 ) 能够进行快速的开发和测试;4 ) 简化了开发基于w e b 的交互式 应用程序的过程。可重用组件j a v a b e a n 和j d b c 数据库连接技术的使用,使 j s p 成为快速建立跨平台的动态网站的首选方案。j a v a s c r i p t 增强了了客户端 的处理能力,将一些小程序移到客户端运行,在一定程度上减轻了服务器端的负 载,加快了服务器的处理速度。 奎丕统的西仝剑堑查丝垄王! 首先,自然语言理解技术用于主观题的自动评 分,使得本系统的功能更加强大;另外,本系统还将无刷新聊天室的思想用于在 线考试中,实现了无刷新网页情况下自动保存考生答案。 北京邮电大学硕士论文网络考试系统的研究与实现 1 4 研究内容 本课题的主要研究内容包括:试题管理、在线考试、自动评分三大功能模块 的研究与实现。其中研究重点放在在线考试和自动评分的研究与实现,自动评分 涉及到人工智能的理论和算法,是本课题研究的重点和难点。 北京邮电大学硕士论文 网络考试系统的研究与实现 2 1 系统平台 第二章系统体系结构 2 1 1 硬件平台 网络考试系统的硬件系统主要有两台服务器,一台数据库服务器,一台应用 服务器,均采用s u n 服务器;客户机采用一般微机即可。 21 2 软件平台 数据库服务器端 网络考试系统数据库服务器的操作系统采用s u n s o l a r i s8 :数据库管理系统 采用o r a c l e8 1 7 。 w e b 服务器端 网络考试系统的w e b 服务器端操作系统采用s u n s o l a r i s8 ;w e b 服务器和j s p 容器采用o r a c l e 8 i 自带a p a c h e ;w 曲服务器和数据库连接技术采用j d b c ;j a v a 运行环境采用o r a c l e 自带j 2 s d k 。 2 2 体系结构 网络考试系统采用基于w e b 的三层结构,即c l i e n t 客户层,s e v e r 服务器层 及中间层。在此种结构中,客户端完全使用w w w 浏览器,无需安装其他软件, 可以使用a p p l e t 等j a v a 程序或a c t i v e 组件来增强客户端的处理能力;对于中间 层的业务逻辑,采用s u n 公司的j 2 e e 。 2 ,21 三层结构概述 随着i n t e r n e t i n t r a n e t 的广泛应用,将w 曲技术的b s 结构与数据库系统三 层c s s 体系结构结合,就得到了w e b 数据库系统的浏览器w c b 服务器数据服 务器( b s s ) 三层体系结构。b s s 结构是数据库为适应i n t e r n e t i n t r a n e t 技术对 c s 结构的继承和发展。 b s s 体系结构是指在t c p i p 的支持下,以h t t p 为传输协议,客户通过浏 览器访问w e b 服务器以及与之相连的后台数据库的体系结构,它由w e b 浏览器、 w e b 服务器、中间层和数据服务器组成。在b s s 结构中,各组成部分之间物理 上通过i n t e m e t i n t r a n e t 相连,软件上遵守h t t p 协议,浏览器通过发送请求和服 北京邮电大学硕士论文网络考试系统的研究与实现 务器建立连接,从而实现以整个i n t e m e t 为背景的数据存储和访问。 w e b 数据库系统的b s s 体系结构如图2 一l 所示: h t t p 请求 w e b 服务器 s q i 请求 数 孚 f 据 浏 库 览 服 器中间件 j 务 器 h t t p 页面应用程序 j结果 图2 1w e b 数据库系统的b s s 体系结构 b s s 体系结构的组成及各组成部分功能: 客户端:客户端上安装w e b 浏览器。w e b 浏览器向网络上的w e b 服务器提 出服务请求,w e b 服务器对用户身份进行验证后用h t t p 协议把所需页面传给客 户端,客户端接受返回的页面文件并把它显示在w e b 浏览器上。 中间层:中间层上包括w e b 服务器和中间件应用程序。w e b 服务器是h t t p 服务器同时又具有应用程序扩展功能,它接受用户的请求并判断用户请求。如果 请求的是一般的静态页面( 后缀为h t m 或h t m i ) ,则在w e b 服务器文件系统找到 所需的文档作为最终结果返回给用户;如果请求的是动态页面,即包括一定的应 用程序,则执行相应的应用程序,由应用程序与数据库进行连接,通过s q l 等 方式向数据库服务器提出数据库操作请求( 如插入、删除、修改和查询等) ,并 等待数据库数据操作的结果,最后将结果返回给w e b 服务器,再由w e b 服务器 将结果动态生成页面返回给用户端。 数据库服务器:实现数据的存储、维护、访问、更新,同时接受来自w e b 服务器数据操作请求,实现对数据库查询、修改、更新等功能,把运行结果提交 给w e b 服务器。数据库服务器由一个具体的数据库管理系统或一组位于不同平 台上的异种数据源组成。 b s s 结构有以下特点:基于t c p f l p 开放式网络标准协议,具有很强的系统 独立性和平台无关性;规范和统一了客户端程序的标准浏览器模式,从而解 决了c s 结构中客户端程序的异构性和跨平台性;完全实现了跨平台访闯计算机 及其网络上的各种资源,同时也延伸了客户机和服务器的物理距离;软件维护开 销能够大大降低,只需开发维护服务器应用程序,无需开发客户端程序;服务器 上所有的应用程序都可以通过w e b 浏览器在客户机上执行,从而统一了用户界 北京邮电大学硕士论文网络考试系统的研究与实现 面。充分发挥了数据库管理系统( d b m s ) 高效的数据存储和数据管理能力,把 传统的数据库访问、存储和维护等技术应用于n t e m e t 的w e b 之上,从而实现更 大程度和更大范围的数据库资源共享。b s s 结构是c s 结构的继承和发展,它 是i n t e r n e t 技术和数据库技术相结合的过程中形成的数据库系统体系结构。b s s 结构代表了当前数据库应用软件技术发展的趋势,是目前人们开发w e b 数据库 系统普遍采用的数据库系统结构。 2 2 2 三层结构的优势 现阶段基于c s 的两层体系结构是同类技术中最成熟的,无论在用户的经 验、开发工具种类、数据库产品的支持程度上都是如此。那么,究竟采用三层 多层结构有什么优势? 我们不妨更深入地认识一下三层多层结构的优点: 1 在大数据量、大业务量环境的应用中通过将应用层集中到中间层,系统 获得了对应用层的独立性,即当用户的要求改变时,开发人员可以迅速地在中间 层更新应用程序,而无需将更新后的应用程序提交到众多的p c 客户端系统上去, 即客户端无需任何改动。三层c s 结构能方便地和i n i e m e t 捆绑起来,从而使c s 应用扩展到i m e m e t 的范围。这样可以通过n t e m e t 实现网上申报,或浏览器查 询访问。三层或多层结构,可以将数据处理从客户端转移到应用服务器和数据库 服务器上。当用户数量很大的情况下,数据库仍能保持良好的工作负载,保持系 统快速的响应速度,这就是w e b 数据库系统中很重要的技术连接缓冲池。 这样,尽管客户端与应用服务器之间可能存在着多个甚至数百个的连接,但是应 用服务器与数据库服务器之间的连接却只有少数几个,从而达到减少通信线路上 传递的数据量的目标。这样的功能分配提供了很强的系统可伸缩性,使得在用户 数量急剧增加时还能保持系统性能的稳定。使用传统的c s 模式根本无法胜任上 千个客户机同时运行需要访问数据库的工作。 在联机分析处n ( o l a p ) ,特别是决策支持应用中,数据的计算、操作和数 据过滤往往是非常复杂的。这些复杂的工作最好在专门的应用服务器进行,而不 是在客户机或数据库服务器上完成。若在客户机上完成这些处理工作,不仅要求 客户机具有足够强大的配置和处理能力,而且对网络负载也有较高的要求。如果 在数据库服务器上执行此类处理工作,将会限制系统支持的用户数量。因此采用 三层或多层结构,可以尽量分担数据库服务器的工作。当然,在数据库服务器与 应用服务器之间保持处理分割的平衡也是十分重要的。 一股情况下进行数据分析时,每次查询可能涉及到大量的数据,往往需要较 长的响应时间,特别在分布式数据环境下,响应时间有时长得令人难以忍受。三 层多层结构提供了客户端与服务器之间得异步通信,使得客户不必等待提交得 北京邮电大学硕士论文厢络考试系统的研究与实现 分析处理结果,他可以继续执行其他的计算任务。 2 在i n t e m e t 环境的应用 传统的c s 结构是一种两层结构模式,其客户端集中了大量的应用软件,而 b s s 或多层b s 结构是一种基于h t t p 、h t m l 、t c p i p 的多层c s 结构,客 户端仅需要单一的浏览器软件,是一种全新的体系结构,它解决了跨平台的问题, 通过浏览器可访问多个应用平台,形成一种一点对多点、多点对多点的结构模式。 b s s 或多层b s 中,客户端采用瘦客户机,运行简单的浏览器,这既可以节省 购买电脑的费用,又可以降低客户机的维护和软件升级费用。因为,客户机不必 进行大量的计算或数据处理,它的硬件配置就不需要太高。而且,客户机使用的 浏览器版本升级只需要在应用服务器和数据库服务器上进行。另外,统一的浏览 器界面也可以大大节省对用户的培训费用。 多层体系结构可以提供更好的安全保障。数据库中的数据除了在组织内部共 享外,其中一部分又要面向外部的公共用户,因此必须能够保证从客户端到数据 库访问的安全性。有了中间的应用服务器,就可以提供灵活的安全管理对象和安 全协议的支持。 多层结构的中间层能够提供广泛的异构数据库访问和复制能力。一个有较长 计算机信息系统应用历史的单位,可能会有许多异构数据源需要集成和访问,在 i n t e m e t 环境下访问异构数据源更是不可避免的。传统的c s 结构,则需要在客 户端上安装许多访问异构数据库的驱动程序,而三层多层结构只要在中间层有 相应的驱动程序,就可以访问异构数据源了。 2 2 3 中间件在三层结构中的作用 在b s s 结构中,有一个重要的部件是中间件。所谓中间件是一个用a p i 定义的软件层,是具有强大通信能力和良好可扩展性的分布式软件管理框架。它 的功能是在客户机和服务器或者服务器和服务器之间传送数据,实现客户机群和 服务器群之间的通信。它的工作流程是:在客户机里的应用程序需要驻留在网络 上某个服务器中数据或服务时,搜索此数据的应用程序需访问中间件,中间件在 整个分布式系统中起着数据总线的作用,各种异构系统通过中间件有机地结合成 一个整体。每个c s 环境从最小地l a n 环境到超级网络环境都使用某种形式的 中间件。无论客户机何时给服务器发送请求,也无论它何时应用存取数据库文件, 都有某种形式的中间件传递c s 链路,用以消除通信协议、数据库查询语言、应 用层与操作系统之间潜在的不兼容问题。 数据库中间件是所有中间件中应用最广、发展前景最好的一种中i 司件,它作 北京邮电大学硕士论文网络考试系统的研究与实现 为前端客户机和后端数据库之间的一个中间层,所起的作用是桥梁的作用,负责 接受客户端的数据请求,做一些简单处理( 如s q l 格式转换,确定数据源等) 后,把请求再传递给相应的后端数据库服务器,进行最后的数据处理,然后,再 将结果由数据库中间件返回给客户端。数据库中间件不单进行与数据库连接等有 关数据库的处理,也可以将传统客户机朋艮务器环境上的处于客户端或服务器端 的应用层移植到中间层上,精简客户端或服务器端。 数据库中间件必须有面向w e b 服务器的接口和面向d b m s 的接口。它负责 管理w e b 服务器和数据库服务器之间的通信,并提供应用程序服务。由于驻留 在w e b 服务器上,因而中间件能够调用作为w e b 服务器和数据库服务器之间“传 输机制”的应用程序,此程序可以实现对数据库的各种操作,将数据库操作请求 ( 一般是s q l 语句) 传递到数据库,并将输出转化为h t m l 页面,然后再由 w e b 服务器将h t m l 页面返回到w e b 浏览器。 任何一个d b m s 都有连接数据库用户数的限制,当与d b m s 连接的用户数 量达到这个上限时,新的用户连接请求就会失败。利用数据库中间件来访问数据 库的思想是把数据库连接的操作从客户端向后移到中间层,这样,多个用户就可 以共享一个数据库连接,因此增加了用户访问数量,从而增强系统的并发处理性 能。同时,中间件也能改善系统的安全性能,降低对客户端和数据库服务器端的 系统要求。当然,数据库中间件也有缺点。因为数据库操作集中,统一由数据库 中间件负责数据通信,系统对数据库中间件的可靠性要求就非常高,一旦中间件 出现问题,所有的数据库连接都将断掉,从而导致系统瘫痪。 2 2 4 实现中间屡的相关技术 本系统中用利用一些j 2 e e 组件来实现中间层,其中用到的j 2 e e 组件有j s p 、 j a v a b e a n s 、j d b c ,下面分别予以介绍: j s p 动态网站技术 随着w e b 技术的发展和电予商务时代的到来,人们不再满足于建立各种静 态发布信息的网站,更多的时候需要能与用户进行交互,并能提供后台数据库的 管理和控制等服务的动态网站。 早期的动态网站开发技术使用的是c g i b i n 接口。开发人员编写与接口相 关的单独的程序和基于w e b 的应用程序,后者通过w 曲服务器来调用前者。这 种开发技术存在着严重的扩展性问题每一个新的c g i 程序要求在服务器上 新增一个进程。如果多个用户并发地访问该程序,这些进程将耗尽该w e b 服务 器所有的可用资源,直至其崩溃。为克服这一弊端,先后出现了a c t i v e s e r v e r 北京邮电大学硕士论文 网络考试系统的研究与实现 p a g e s f a s p ) 和p h p 等技术,但是a s p 技术主要局限于微软的操作系统平台之上, 不能很容易地实现跨平台的w e b 服务器程序开发,p h p 是种解释型语言,不 支持多线程结构,支持平台和连接的数据库都有限,特别是在支持的标准方面存 在先天不足,对于某些电子商务应用来说,p h p 是不适合的。 显然我们需要的是一个业界范围内的创建动态内容页面的解决方案,太阳微 系统公司( s u nm i c r o s y s t e m si n e ) 在w e b 服务器、应用服务器、交易系统以及开 发工具供应商间广泛支持与合作下,整合并平衡了已经存在的对j a v a 编程环境 ( 例如j a v as e r v l e t s 和j a v a b e a n s ) 进行支持的技术和工具后产生了一种新的、 开发基于w e b 应用程序的方法j a v as e r v e rp a g e s 技术( j s p ) 。它可以满足动 态网站开发的四大需求: 1 ) 能够在任何w e b 或应用程序服务器上运行; 2 ) 分离了应用程序的逻辑和页面显示; 3 ) 能够进行快速的开发和测试; 4 ) 简化了开发基于w e b 的交互式应用程序的过程。 为了快速方便地进行动态网站的开发,j s p 在许多方面做了改进,尤其是可 重用组件j a v a b e a n 和j d b c 数据库连接技术的使用,使其成为快速建立跨平台 的动态网站的首选方案。 j a v a b e a n 可重用的软件组件 j s p 是嵌入了j a v a 代码的h t m l ,两种标记混杂容易出错,发现和纠正错误 需要花费不少时间。j s p 网页吸引人的地方之一就是能结合j a v a b e a n 技术来扩充 网页中程序的功能。使用j a v a b e a n 可以减少j s p 中的j a v a 代码量,而且能把应 用的表达层和逻辑层分离。网页设计人员可以只关心页面的规划,而j a v a 程序 员可以安心开发l a v a b e a n 。 j a v a b e a n 是一种自包含的、可重用的软件组件,是遵循某种设计原则的j a v a 类文件,是一种j a v a 类( c l a s s ) ,通过封装属性和方法成为具有某种功能或者处 理某个业务的对象。j a v a b e a n 被组织成为p a c k a g e ( 数据包) 以便进行管理,实 际上就是把一组j a v a b e a n 一起放在某个目录中,每个类的定义前加上p a c k a g e 名,本系统中用到了c o m 和t e s t 两个包。包t e s t 和c o m 必须放在系统环境 c l a s s p a t h 包含的目录下,系统才能找到其中的j a v a b e a n 。j a v a b e a n 遵循以下 规则: 1 ) b e a n 具有不带参数的构造函数。 2 ) b e a n 具有供用户使用的一些属性,对每个属性,都有相应的g e t 和s e t 方法对其进行读写。g e t 方法不能带参数,返回值是一个对象,对象类 北京邮电大学硕士论文网络考试系统的研究与实现 型就是该属性的类型。s e t 方法带有一个参数,参数类型为该属性的类 型,s e t 方法没有返回值。 在j s p 中,使用标 l ? , 来定义j a v a b e a n ,这个标记创建了j a v a b e a n 的一个实例,并给这个实例命名。例如: ,属性i d 和c l a s s ,分别定义了这个b e a n 的 名称和类型。另一个属性s c o p e 定义了b e a n 的有效范围,可以取值p a g e ,r e q u e s t , s e s s i o n ,w e bc o n t e x t ,分别表示在本页面,本次h t t p 请求,本次会话期,和w e b 环境内有效。用g e t p r o p e r t y 元素可以检索到b e a n 的属性,同时要指明b e a n 的 n a l t l e ( 即u s e b e a n 标记中的定义i d ) 和p r o p e r t y 属性。如下所示: 。用s e t p r o p e r t y 元素可以设置 b e a n 属性,同时要指明b e a u 的n a r l e ,p r o p e r t y 和v a l u e 属性: j s p :s e t p r o p e r t y n a n l e = p r o p e r t y = ”v a l u e 5 ,。 j d b c 连接数据库 1 什么是j d b c 。j d b c 是j a v a s o f l 公司设计的j a v a 语言的数据库访问a p i , 它由一组用j a v a 语言编写的类和接口组成,通过它的一个程序,开发者可以在 j a v a 程序中建立与d a t a b a s e 的链接,执行s q l 语句,处理s q l 语句返回的结果。 最初的j a v a 语言并没有数据库访问能力,j d b c 是第一个支持j a v a 语言的 标准的数据库a p i ,其目的在于使j a v a 程序与数据库服务器的链接更加方便。 j d b c 的原理机制和o d b c 相同,它给基于j a v a 语言的应用程序提供了统一的 数据库访问接口,只不过j d b c 是用纯j a v a 实现的,而o d b c 是用纯c 实现的。 将j a v a 和j d b c 结合起来将使程序员只需写一遍程序就可以让它在任何平台上 运行。 j a v a 具有坚固、安全、易于使用、易于理解和可以从网络上下载等特性,是 编写基于w e b 的数据库应用程序的合适语言,所需要的只是j a v a 应用程序与各 种不同数据库之间进行对话的方法,而j d b c 正是作为此种用途的机制。 2 j d b c 的功能。可以说j d b c 扩展了j a v a 的功能,使j a v a 程序可以访问 数据库。简单的说,j d b c 具有建立数据库、发送s q l 语句、处理结果的功能。 3 j d b c 的构成。j d b c 是一个与数据库系统独立的a p i ,它包含两部分: 面向应用开发人员的j d b c a p i 和面向底层的j d b cd r i v e r a p i 。 j d b ca p i 提供了应用程序到j d b c 驱动器管理程序( j d b cd r i v e rm a n a g e r ) 的通信功能,它是一组抽象的接口,可以进行数据库连接和调用s q l 语句来访 问支持j d b c 的数据库,并且得到返回的结果。 北京邮电大学硕士论文 网络考试系统的研究与实现 j d b cd r i v e ra p i 是面向驱动程序开发商的编程接口,用来管理各种数据库 软件商提供的j d b c 驱动程序。j a v a s o f t 公司提供了一个通用的j d b c 驱动器管 理程序,而各种数据库公司只需提供一个o d b c 驱动程序。 j d b c 驱动器管理程序处理j d b c 驱动器与数据库和j a v a 应用程序的所有通 信,j a v a 应用程序通过它来装载对应的特定数据库的驱动程序; j d b c 驱动程序一般是d l l 形式,每个j d b c 驱动程序对应一种数据库和平 台,主要完成j a v a 应用程序所提交的数据库访问请求。 j a v a s o f t 公司提供了一个特殊的驱动程序,j d b c o d b c 桥,该软件支持 j d b c 通过现有的o d b c 驱动程序访问数据库服务器。 j d b c 工作原理和组成结构如图2 2 所示: 图2 2j d b c 工作流程和组成结构 4 基于j d b c 的w e b 数据库系统的体系结构。j d b c 既支持b s 体系结构, 也支持b s s 体系结构。 ( 1 ) b s 结构。在j a v aa p p l e t 中访问数据库,可以使用j d b c 技术,通过 j d b c 提供的a p i 来实现对分布在网上的不同数据库的各种操作,即j

温馨提示

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

评论

0/150

提交评论