(计算机应用技术专业论文)基于jsp和javabeans技术的在线自测系统的开发与实现.pdf_第1页
(计算机应用技术专业论文)基于jsp和javabeans技术的在线自测系统的开发与实现.pdf_第2页
(计算机应用技术专业论文)基于jsp和javabeans技术的在线自测系统的开发与实现.pdf_第3页
(计算机应用技术专业论文)基于jsp和javabeans技术的在线自测系统的开发与实现.pdf_第4页
(计算机应用技术专业论文)基于jsp和javabeans技术的在线自测系统的开发与实现.pdf_第5页
已阅读5页,还剩75页未读 继续免费阅读

下载本文档

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

文档简介

中文摘要 随着网络时代的到来,我国的网络教育在最近几年驶入了快车道。网络教 育的发展必须建立在开发适用的应用软件和教学资源的基础上,在线自测系统即 是网络教育的一个典型应用,学生可以通过它在互联网环境中实现在线测试并实 时取得成绩。 本系统是一个动态w e b 应用,主要采用j s p 和j a v a b e a n s 技术。j s p 是j a v a s e r v l e t 的直接扩充,用于开发w e b 应用。j a v a b e a n s 组件是符合特定编码规范的 j a v a 类,在较大型的应用中作为可重用的组件。j s p 和j a v a b e a n s 相结合最大的 优势在于它实现了分离处理业务逻辑和显示样式。应用开发人员可以使用h t m l 标识设计和格式化页面,使用j s p 标识生成页面上的动态内容,使用j a v a b e a n s 处理业务逻辑。 本文首先简要介绍了这两项技术,并通过与另一项建立动态网站的技术 a s p 进行对比,分析了选择j s p 和j a v a b e a n s 作为动态w e b 应用解决方案的优缺 点,然后给出了本系统的功能设计和运行环境,最后说明了本系统各个模块的详 细设计和具体实现。 关键词:网络教育在线测试j s pj a v a b e a n s 数据库动态w e b 应用 a b s t r a c t i nt h ea g eo fn e t w o r k ,e d u c a t i o no nl i n eh a sb e e nd e v e l o p e dr a p i d l yi nt h el a s t f e wy e a r si no u rc o u n t r y t h ed e v e l o p m e n to fe d u c a t i o no nl i n er e q u i r e sa p p l i c a t i o n s o f t w a l ea n de d u c a t i o nr e s o u r c e s ,a n dt h et e s to nl i n es y s t e mi sat y p i c a la p p l i c a t i o n o fe d u c a t i o no nl i n e s t u d e n t sc a nt a k et e s t sa n dg e ts c o r e st h r o u g ht h es y s t e mo nt h e i n t e r n e t t h es y s t e mi sad y n a m i cw e b a p p l i c a t i o n ,m a i n l yb a s e do nj a v at e c h n o l o g y , j s p a n dj a v a b e a n s j s pi st h el a t e s tj a v a t e c h n o l o g yf o rw e ba p p l i c a t i o nd e v e l o p m e n t a n d i sb a s e do nt h es e r v l e tt e c h n o l o g y aj a v a b e a n s c o m p o n e n t i saj a v ac l a s st h a tf o l l o w s c e r t a i nc o d i n gc o n v e n t i o n s ,s oi tc a l lb eu s e db yt o o l sa sar e u s a b l ec o m p o n e n ti na l a r g e ra p p l i c a t i o n t h em o s tr e m a r k a b l ep o i n to fu s i n gj s p w i t hj a v a b e a n si st h a ti t c a ns e p a r a t et h er e q u e s tp r o c e s s i n ga n db u s i n e s sl o g i cc o d ef r o mt h ep r e s e n t a t i o n a p p l i c a t i o nd e v e l o p e rc a l lp l a c ea l l s t a t i ch t m li naj s pp a g e ,a d daf e wj s p e l e m e n t st og e n e r a t et h ed y n a m i cp a r t so ft h ep a g ea n du s ej a v a b e a n st oh a n d l et h e b u s i n e s sl o g i c a tf i r s t ,w eg a v eab r i e fi n t r o d u c t i o nt oj s pa n dj a v a b e a n s ,a n dd i s c u s s e dt h e s t r o n gp o i n t sa n dp r o b l e m so fd e v e l o p i n gd y n a m i cw e ba p p l i c a t i o nb a s e do nj s p a n d j a v a b e a n sc o m p a r i n gw i t ht h ea k e m a t i v ea s pt e c h n o l o g y s e c o n d l nw eb r o u g h t f o r w a r dt h ef u n c t i o nd e s i g na n ds y s t e mr e q u i r e m e n t f i n a l l nw ep r o v i d e dt h ed e t a i l d e s i g n sa n d c o d ei m p l e m e n t a t i o n so f t h em o d u l e s k e y w o r d s :e d u c a t i o no n l i n e ,t e s t o n l i n e ,j s p , j a v a b e a n s ,d a t a b a s e , d y n a m i c w e b a p p l i c a t i o n 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得苤盗盘鲎或其他教育机构的学位或证 书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 学位论文作者签名:苌芝英 青 签字目期:2 矿护z 年z 月2 扩日 学位论文版权使用授权书 本学位论文作者完全了解盘盗盘堂有关保留、使用学位论文的规定。 特授权苤盗盘堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校 向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名 起英惰 导师签名 7 盯丕属 签字日期:2 卯2 年z 月2 扩日 签字日期:z 年,2 月工扩日 第一章引言 1 1 问题的提出 第一章引言 随着计算机应用的迅猛发展和网络应用的不断扩大,教育逐渐走向互联网, 我国的刚络教育进入飞速发展时期。目前,国内的网络教育已经初具规模,涌现 出诸如校园网、远程教育和虚拟大学等等应用热点。北大、清华、人大等许多高 校都已经率先把教育搬到网上,除此之外,面向中小学生的教育网站也日渐红火。 网络教育的引人入胜之处是显而易见的,它能使学生突破时空的限制,实现个性 化的优质学习,使学生的主动性、积极性、创造性得到充分的发挥。普及网络教 育,实现教育的信息化,有利于快速提高国人教育水平,是革新传统教育模式的 重要动力。 学生在学习过程中为了巩固学到的知识,检查自己的不足,需要作测试题。 采取传统的方式,教师需要人工出题、打印分发、人工阅卷、统计学生成绩等, 工作量很大,且十分烦琐和容易出错。采用建立在计算机网络和数据库技术基础 上的在线测试系统,一方面大大减轻了教师出题和阅卷等繁重的工作量,另一方 面满足了学生随时随地自考自测并迅速得知自己成绩的需要。这种无纸化在线自 测方法既可减轻教师的工作负担及提高工作效率,又可激发学生的学习兴趣,对 发挥学生的主体作用、更新教学模式、培养学生的创新能力提供了一个理想的教 学环境。总之,在线测试是网络教育必不可少的一部分。 1 - 2 本文的主要研究内容 本文研究和开发的在线自测系统的主要功能是:教师在局域网环境中,可以 根据学生学习情况从试题库中灵活地选择题目组卷,有自动选题和手工选题两种 方式;学生可以通过浏览器,按照教师的要求选择测试卷,答题后提交给系统, 由系统计算出成绩,存入学生档案。学生成绩存入数据库,教师可以通过分析答 题成绩来了解学生的学习情况。 根据需求分析,本系统分为前台和后台两部分,分别采用了b s 和c s 模式。 前台部分即学生答题部分,学生可以随时随地在互联网环境中利用浏览器实现答 题、查询成绩等功能,采用b s 模式,核心部分应用了j s p 和j a v a b e a n s 技术。 编程工具主要使用d r e a m w e a v e r 编辑静态h t m l 页面和动态j s p 页面,使用f o r t e f o rj a v a c o m m u n i t ye d i t i o n 开发j a v a b e a n s ,使用r e s i n 作为w e b 服务器和j s p 支撑平台。后台部分即学生信息管理、试题库维护和教师组卷部分,考虑到教师 第一章引言 给学生布置作业和进行试题库维护的工作都是在学校办公室中,也就是在校园局 域网环境中完成的,因此采用c s 模式有利于保障系统和数据库的安全,提高应 用开发效率,在客户端实现更加人性化和简单易用的交互界面。本系统采用以支 持数据库应用为特色的p o w e r b u i l d e r 语言开发客户端应用程序界面。 本系统前台学生答题程序所采用的j s p 和j a v a b e a n s 技术都是j a v a 语言。j s p 是j a v a 系统中支持建立动态w e b 页面的标准,j a v a b e a n s 是跨平台可重用的软件。 本文首先对j s p 和j a v a b e a n s 技术作了简单的介绍,探讨了j s p 和j a v a l 3 e a n s 技 术在开发w e b 应用方面的特点、强势和劣势,并与另一个流行的用于建立动态 网站的a s p 技术进行了比较。然后从编程角度介绍了该技术连接数据库和实现 w e b 应用的使用方法。最后说明了本系统前台和后台各个模块的详细设计和具体 实现。 第二章系统总体介绍 第二章系统总体介绍 本系统总体框架结构采用了b s 和c s 相结合的模式:学生答题系统( 前台) 采用b s 模式,学生信息管理、试题库维护、组卷系统( 后台) 采用c s 模式, 如图l 所示。 图1系统总体框架结构图 2 1 学生在线自测系统( 前台部分) 2 1 1 功能简介和特点 学生在线自测系统包括如下功能: i 登录页面,学生输入学号和密码。( d e f a u l t j s p ) 2 自测练习卷选择页面,学生选择测试卷,提交给服务器。( t e s t l i s t j s p ) 3 测试题显示页面,学生做练习题,填入答案后提交。( t e s t j s p ) 4 ,计算测试成绩页面,并显示给学生,如果是学生第一次做当前试卷,成 绩存入数据库。( t e s t j f j s p ) 5 成绩查询页面,显示学生所做过的所有测试卷的成绩和时间。( s c o r e j s p ) 6 更改口令页面,学生更改口令。( p a s s w o r d j s p ) 本系统主要特点如下: 1 学生可以在互联网环境中利用浏览器实现在线测试,实时取得成绩。 2 题目类型较多,不仅包括客观题的各种类型,如单项选择题,多项选择 题,判断题,还包括主观题中的填空题。 3 自动计算成绩,并将学生第一次答题的成绩存入数据库,可以用于收集 第二章系统总体介绍 和统计学生的平时作业成绩。 系统中存有多套试题卷,学生可以根据自己情况灵活机动地选择。 学生可以查询自己的成绩记录。 学生可以随时更改自己的密码,增加系统的安全性。 使用j s p 和j a v a b e a n s 技术,执行速度快。 21 2 运行环境和系统结构 1 客户端:i n t e r n e te x p l o r e r ( i e ) 浏览器。 2 服务器端: 操作系统:w i n d o w s2 0 0 0p r o f e s s i o n a l w e b 服务器和j s p 支撑平台:r e s i n 软件环境:j d k l 4 0 数据库:s q l s e r v e r2 0 0 0 ,o d b c 数据源设置 3 系统结构如图2 所示。 图2前台学生在线自测系统功能模块图 2 1 3 开发工具 使用d r e a m w e a v e r 编辑h t m l ,j s p 页面。 使用f o r t ef o rj a v ac o m m u n i t ye d i t i o n 编写和调试j a v a b e a n s 。 4 第二章系统总体介绍 2 2 学生信息管理、试题库维护、组卷系统( 后台部分) 2 2 1 功能简介和特点 学生信息管理、试题库维护、组卷系统包括如下功能: 1 学生信息管理,插查删改学生档案。 2 试题库维护,包括各种题型,如选择题、填空题和判断题。 3 自动组卷,即教师确定各种题型的数量和分数,系统随机从机器中抽取 题目。 4 手工组卷,即教师从试题库的各种题型的浏览窗口中用鼠标选择题目添 加到试卷中。 5 学生成绩查询和分析,用各种图表来显示学生的答题情况。 特点: i 人机界面友好,树形菜单令操作者一目了然。 2 。试题库和学生信息的维护操作简单易用。 3 自动组卷和手工组卷的功能使教师可以在瞬间完成组卷工作。 4 设多种学生成绩分析图表。帮助教师了解学生的知识掌握情况。 5 使用p o w e r b u i l e r 语言开发,执行速度快。 2 2 2 运行环境和系统结构 1 客户端: p o w e r b u i l d e r 编写的应用程序。 o d b c 数据源设置 2 服务器端: 操作系统:w i n d o w s2 0 0 0p r o f e s s i o n a l 数据库:s q ls e r v e r2 0 0 0 3 系统结构如图3 所示。 第二章系统总体介绍 图3后台学生信息管理、试题库维护、组卷系统功能模块图 2 2 3 开发工具 使用p o w e r b u i l d e r8 0 编写应用程序,再分发给校园网中的客户端。 第三章系统应用的关键技术 第三章系统应用的关键技术 3 1j a v a 服务器页面j s p 3 1 1j s p 和s e r v l e t 的定义 j s p ( j a v as e r v e rp a g e s ,j a v a 服务器页面) 是一种既简单又强有力的技术, 用于在服务器端生成动态的h t m l 页面。j s p 是j a v as e r v l e t 的直接扩充,它提 供一种把内容的表示与内容的生成分隔开来的手段。 s e r v l e t 是对支持j a v a 的服务器的一般扩充。s e r v l e t 最常见的用途是扩展w e b 服务器,提供非常安全的、可移植的、易于使用的c g i 替代品。s e r v l e t 是一种 动态加载的模块,为来自w e b 服务器的请求提供服务。它完全运行在j a v a 虚拟 机上。由于s e r v l e t 在服务器端运行,因此它不依赖于浏览器的兼容性。 j a v as e r v l e t 的执行过程如图4 所示。 浏览器w e b 服务器 图4j a v as e r v l e t 的执行过程 3 1 2j s p 的运行机制 j s p 文档被复制到w e b 服务器的文档目录中。当有人请求这个文档时,服务 器识别出这个带有j s p 扩展名的文档,并意识到需要作特殊处理。第一次请求这 个文档时,它被编译成一个s e r v l e t 对象,并存储在内存中,然后输出内容回送 给发出请求的客户机。第一次请求之后,只要有请求到来,服务器将进行检查, 看看这个文件是否做过改动,如果没有变化,服务器调用先前编译过的s e r v l e t 对象。 j s p 请求的步骤如图5 所示。 第三章系统应用的关键技术 1 2 3 4 图5一个j s p 请求的步骤 j s p 主要是针对j a v a 程序处理不熟悉的人设计的。与s e r v l e t 相比,j s p 有 如下两个优势:i 方便与h t m l 混合2 在开发、测试方面比s e r v l e t 方便。 3 1 3j s p 的强势和劣势 j s p 的强势: 1 可移植性。j s p 是用j a v a 开发的,因此它是可移植的,可以一处编写, 随处运行,支持多平台。 2 有效性。j s p 的初始化代码仅在w e b 服务器第一次加载时执行一次。一 旦加载,在处理一个新的请求时,只须调用一个新的服务方法。与处理 每个请求都要全部加载一个完整的可执行程序相比,这是一个相当有效 的技术。 3 强大的可伸缩性和可扩充性。它能够在面向对象的语言( j a v a ) 中进行 开发,并可以在现有对象基础上进行扩展。形成新的对象,从而更好地 满足用户的需求。 4 多样化和功能强大的开发工具支持。 5 现在的应用从2 - t i e r 向3 - t i e r 结构转移,j s pa p i 是j 2 e e 的一部分,给 w e b 和j a v a 开发者创建各种应用提供了简单但强有力的机制: a ) 它提供了访问远程数据的机制如e j b ,r m i ,j d b c ; b ) 它让开发者从一堆代码中分离程序逻辑而达到最大程度的代码重用 和灵活性。逻辑和表现的分离是它超越其他w e b 应用结构的一个主 要优势。 6 j a v as e r v l e t 是一种开发w e b 应用的理想构架。j s p 以s e r v l e t 技术为基 础,又在许多方面作了改进。利用跨平台的j a v a b e a n s 组件,j s p 为分 离处理逻辑与显示样式提供了卓越的解决方案。 第三章系统应用的关键技术 j s p 的劣势: 1 ,为了跨平台的功能,为了极度的伸缩能力,极大的增加了产品的复杂性 j a v a 系统中包括j r e ,j d k ,j 2 e e ,e j b 等多种产品,这就需要大量的 学习和培训才能掌握它们,将它们有效地搭配在一起,灵活地加以运用。 2 j a v a 的运行速度快是由于用户将c l a s s 常驻内存,这样使用的内存空间 就比较大。另一方面,它还需要硬盘空间来存储一系列j a v a 文件和c l a s s 文件以及对应的版本文件。 3 j s p 只有对j a v a 相当熟悉的人才能用得很好。 4 j s p 程序调试困难。 3 1 4j s p 与a s p 的比较 本系统的前台部分是学生在线自测系统,采用b s 模式,需要采用动态网站 技术,本系统采用了s u n 公司的j s p 技术。微软公司开发的解决动态w e b 内容 的a s p 技术也是当前流行的w e b 开发工具。下面首先简要介绍a s p 技术,然后 将j s p 技术与a s p 技术加以比较。 a s p 即a c t i v es e r v e rp a g e s ,是微软开发的一种类似h t m l ( 超文本标记语 言) ,s c r i p ( 脚本) 与c g i ( 公用网关接口) 的结合体。它没有提供自己专门的编程 语言,而是允许用户使用许多已有的脚本语言编写a s p 的应用程序。通过使用 a s p 的组件和对象技术,用户可以直接使用a c t i v e x 控件,调用对象方法和属性, 以简单的方式实现强大的交互功能。它主要的工作环境是微软的i i s 应用程序结 构,基本上是局限于的操作系统平台。 j s p 和a s p 的对比如下: 1 结构 j s p 和a s p 在结构上类似,都是以“”作为标识符,不同的是在标识符之 问的代码。a s p 为j a v a s c r i p t 或v b s c r i p t ,而j s p 为j a v a 代码。j s p 将网页的表 现形式和服务器端的代码逻辑分开。 2 ,执行速度 s e r v l e t s 比传统的j a v a 程序( a p p l e t s ,j a v aa p p ) 要快,因为它们在服务器 瑞运行,不需要加载沉重的g u i 。另外,s e r v l e t s 的字节代码只有在客户请求时 才执行,所以尽管当首次调用s e r v l e t s 时会有几秒钟的加载时间,但后续的请求 响应非常迅速,因为服务器已经缓存了运行的s e r v l e t s 。因此,j s p 的执行比每 次都要解释执行的a s p 代码要快。 3 s e s s i o n 管理 为了跟踪用户的操作状态,a s p 应用s e s s i o n 对象。j s p 使用个叫 9 第三章系统应用的关键技术 h t t p s e s s i o n 的对象实现同样的功能。 4 a p p l i c a t i o n 管理 和s e s s i o n 一样,a s p 使用a p p l i c a t i o n 对象,而j s p 使用s e r v l e tc o n t e x t 对 象,或者a p p l i c a t i o n 内建对象,操作方法和s e s s i o n 一样。 5 对组件的支持 j s p 的组件是j a v a b e a n s ,是一些完成预定义功能的封装对象数据。j a v a b e a n s 只能用j a v a 语言开发,而与a s p 结合的c o m 可以用符合标准对象模型的任何 语言开发。另一方面,j a v a b e a n s 比较容易开发,因为一旦掌握了j a v a ,了解 j a v a b e a n s 的结构非常容易,而c o m 的开发相对复杂,除了要具有c + + 和v i s u a l b a s i c 的编程基础,还需要掌握许多其它相关知识。c o m 组件更改后需要在服务 器上注册,而j a v a b e a n s 不需要注册。 6 数据库连接 a s p 使用o d b c 通过a d o 连接数据库,而j a v a 通过j d b c 技术连接数据 库。如果一个特定的数据库没有j d b c 驱动程序,而只有o d b c 驱动程序,j a v a 提供一个j d b c o d b c 桥来将j d b c 调用转化为o d b c 调用。 结论:j s p 和a s p 在技术上有许多相似之处,不过两者来源于不同的技术规 范组织;j s p 模型是在a s p 之后定义的,借用了a s p 的许多优点,如s e s s i o n , a p p l i c a t i o n 等对象。 j s p 的优势主要在于:j s p 具备了跨平台的特性及面向对象程序设计的观念, 让开发出来的网站具有更高的稳定性和可移植性,而a s p 开发者只能使用基于 w i n d o w s 平台的技术;j s p 使用灵活而强大的j a v a 语言,而不是低效的s c r i p t i n g 语言:基于j s p 技术的应用程序比基于a s p 的应用程序易于维护和管理;j s p 采 取编译后执行的方式,大大提高了执行效率,因而逐渐成为因特网上的主流开发 工具。 j s p 与a s p 技术的主要比较项目如表1 所示。 表ij s p 技术与a s p 技术的比较 项目j s pa s p 运行速度快较快 运行耗损较小较大 运行平台绝大部分平台可用w i n d o w s 平台 扩展性好较好 安全性好较差 函数支持多较少 0 第三章系统应用的关键技术 数据库支持多多 厂商支持多较少 对x m l 的支持支持不支持 对组件的支持支持j a v a b e a n支持c o m 本系统采用具有明显优势的j s p 技术进行开发。 3 2j s p 的数据库连接:j d b c 和j d b c o d b c 网桥 3 2 1j d b c j d b c :j a v a 数据库连接( j a v ad a t a b a s ec o n n e c t i v i t y , j d b c ) 接口是一种纯 粹的j a v a a p i ,用于执行s q l 语句。j d b c 驱动程序管理器包含组成j d b c 驱动 程序管理器( i a v a s q l d r i v e r m a l l a g e r ) 的一系列类和所有j d b c 驱动程序的抽象类。 3 ,2 2j d b c o d b c 网桥 j d b c o d b c 网桥是提供与o d b c 驱动程序接口的驱动程序,可以运行在 w i n d o w s 平台上。它要求用户有o d b c 驱动管理器,并安装o d b c 驱动程序。 s u n 公司的j d k l 1 及更新的版本均提供j d b c 类和j d b c o d b c 网桥。 j d b c o d b c 桥驱动程序的交互作用如图6 所示。 图6j d b c o d b c 桥 3 - 2 3 用j d b c o d b c 网桥与数据库建立连接 用j d b c o d b c 网桥与数据库建立连接需要2 个步骤 第三章系统应用的关键技术 1 配置o d b c 数据源 2 建立数据库连接 a 、i m p o r tj a v a s q l + b ) 加载j d b c o d b c 桥驱动程序,类名为j d b c o d b c j d b c o d b c d r i v e r ,代码 如下: c l a s s f o r n a m e ( j d b c o d b c j d b c o d b c d r i v e r ”) ; c ) 进行数据库连接。连接过程调用一个静态的 d r i v e r m a n a g e r g e t c o n n e e t i o n ( ) ,返回一个数据库连接。 p u b t i cs t a t i c s y n c h r o n i z e dc o n n e c t i o ng e t c o n n e c t i o n ( s t r i n gu r l ,s t r i n g u s e r , s t r i n gp a s s w o r d ) t h r o w ss q l e x c e p t i o n ; 第一个参数是指向数据源的u r l ,j d b c o d b c 网桥的格式是: “i d b c :o d b c :d a t a s o u r c e n a m e ”,d a t a s o u r c e n a m e 是我们设定的o d b c 数据 源的名字。后面的参数是用户名和密码( 可以省略) 。数据源连接的源代码 为: c o n = d r i v e r m a n a g e r g e t c o n n e c t i o n ( j d b c :o d b c :t e s t d b ”) ; 3 2 4 执行基本的s q l 命令 对数据库进行操作,是通过执行s q l 命令来完成的,方法如下: 1 创建j d b c 的s t a t e m e n t 对象 在对数据源进行查询和修改之前,必须获得一个s t a t e m e n t 对象。在完 成一个成功的连接之后,需要调用c o n n e c t i o n c r e a t e s t a t e m e n t 0 方法创建 s t a t e m e n t 对象,代码如下: s t a t e m e n ts t m t = c o n c r e a t e s t a t e m e n t ( ) 2 使用s t a t e m e n t 的e x e c u t e u p d a t e 0 执行s q l 修改语句。 3 使用s t a t e m e n t 的e x e c u t e q u e r y 0 方法执行s q l 查询语句,最常用的是 s e l e c t 语句,语法定义如下: p u b l i c r e s u l t s e te x e c u t e q u e r y ( s t r i n gs q l ) t h r o w ss q l e x c e p t i o n 然后调用r e s u l t s e t n e x t ( ) 方法,返回布尔值表示结果集的下一行数据是 否有效。如果有效,可以利用r e s u l t s e t 对象的g e t 方法访问数据行。 3 3j a v a 组件j a v a b e a n s 3 3 1 什么是j a v a b e a n s j a v a b e a n s 是跨平台并且可重用的软件。j s p 是j a v a 语言( s e r v l e t ) 在互联 网的一种延伸,j s p 的优势在于产生中间件来处理企业逻辑代码,这样便可以使 2 第三章系统应用的关键技术 代码一次建立,多次应用。具体的执行过程如图7 所示。 图7j a v a b e a n s 的执行过程 j a v a b e a n s 的优势在图中已经显示出来。在右图中形象地表明可能有一段代 码需要在三个地方应用,一幅图很难画出上千上百个应用服务器,但在实际中很 有可能一段代码需要在几百个地方应用,如数据库的连接代码,每一个j s p 文件 需要进行数据库操作都要使用该代码。左图表明,如果用j a v a b e a n 去连接,再 通过j s p 来表示,不仅节省不少的执行时间,而且当某天要把s q ls e r v e r 的数 据改为o r a c l e 数据库时,只需要一次修改便可。j a v a b e a n s 实现了对象的共享, 使代码更符合国际规范。 3 3 2j s p 与j a v a b e a n s 的关系 使用j s p 技术,w e b 页面开发人员可以使用h t m l 和x m l 标识来设计和 格式化最终页面。使用j s p 标识或者小脚本生成页面上的动态内容。生成内容的 逻辑被封装在j s p 标识和j a v a b e a n s 组件中,并且捆绑在小脚本中,所有的脚本 在服务器端运行。核心逻辑封装在标识和b e a n s 中,可以方便页面设计者编辑和 使用j s p 页面。 在服务器端,j s p 引擎解释j s p 标识和小脚本生成所请求的内容( 例如,通 过访问j a v a b e a n s 组件,使用j d b c 技术访问数据库) ,并且将结果以h t m l ( 或 者x m l ) 页面的形式发送回浏览器。 绝大多数j s p 页面依赖于可重用的跨平台的组件( j a v a b e a n s 或者e n t e r p r i s e j a v a b e a n s 组件) 来执行应用程序所要求的复杂的处理。这样的好处是开发人员 能够共享和交换执行普通操作的组件,加速了总体开发过程。因此,基于w e b 第三章系统应用的关键技术 的较为复杂的应用程序( 如电子商务网站或网上m i s ) ,j s p 的复杂架构必须由 j a v a b e a n s 达成。 3 4j s p 引擎r e s i n 本系统采用r e s i n 作为独立运行w e b 服务器和j s p 引擎,如图8 所示。 图8独立运行的w e b 服务器和j s p 引擎r e s i n r e s i n 提供一个独立的w e b 服务器,同时也是速度比较侠的j s p 平台。它的 优点还在于可以提供更为准确的错误提示。它是全免费的,从站点下载的就是完 整版本。本系统使用的版本是r e s i n 2 0 4 。 r e s i n 既可以作为独立运行的w e b 服务器,也可以与其他w e b 服务器一起 运行,为其他w e b 服务器提供快速的s e r v l e t 的模块,执行s e r v l e t 或是j s p 的文 件。 r e s i n 的特性包括: 1 支持j s p 和在服务器端编译的j a v a s c r i p t 。 2 使用s e r v l e t 引擎。 3 自动的s e r v l e t b e a n 编译,可以使用r e s i n 直接编译j a v a 文件,而不需 要使用j a v a c 编译。 4 支持i i s 、a p a c h e 、n e t s c a p e 和其他内置了h t i p 的w e b 服务器。 3 5 数据库s q ls e r v e r2 0 0 0 s q ls e r v e r2 0 0 0 是微软公司最新版的大型数据库服务器,s q ls e r v e r 作为 微软在w i n d o w s 系列平台上开发的数据库,一经推出就以其易用性得到了很多用 户的青睐。 区别于f o x p r o 、a c c e s s 小型数据库,s q ls e r v e r 是一个功能完备的数据库 管理系统。它包括支持开发的引擎、标准的s q l 语言、扩展的特性r 如复制、o l a p 、 分析) 等功能。而像存储过程、触发器等特性,也是大型数据库才拥有的。 s q ls e r v e r 与w i n d o w s 界面风格完全一致,且有许多“向导( w i z a r d ) ”帮助, 因此易于安装和学习,s q ls e r v e r2 0 0 0 提供非常“傻瓜”的缺省安装和使用模 式,其上手难度并不比a c c e s s 大。另外,s q ls e r v e r2 0 0 0 可以兼顾小、中、大 第三章系统应用的关键技术 规模的应用,有着远远比a c c e s s 强大的伸缩性。 s q l s e r v e r2 0 0 0 还在s q ls e r v e r7 0 的基础上对性能、可靠性、质量以及易 用性进行了扩展。s q ls e r v e r2 0 0 0 中包含许多新特性,这些特性使其成为针对 电子商务、数据仓库和在线商务解决方案的卓越的数据库平台。其增强的特性包 括对丰富的扩展标记语言( x m l ) 的支持、综合分析服务以及便捷的数据库管 理。 3 6 数据库应用开发工具p o w e r b u i l d e r 3 6 1 p o w e r b u i l d e r 简介 p o w e r b u i l d e r 是由s y b 粥e 公司的独资子公司p o w e r s o r 推出的应用于客户机 朋务器体系结构下的应用程序开发技术,是一种面向对象的图形化交互式开发 工具。随着数据库技术在各行各业的广泛应用,作为企业级数据库前端开发工具 的p o w e r b u i l d e r 日益成为开发人员的得力助手。p o w e r b u i l d e r 以其开放的体系结 构简洁高效的集成开发环境、强大的数据窗口技术、几乎无所不能的数据库访问 能力和友好的用户界面,越来越受到编程人员的青睐。 3 6 2 p o w e r b u i l d e r 作为数据库开发工具的主要特点 传统的3 g l 编程方式的开发方法,应用软件开发的效率不高。对应用软件 的开发有着很大的限制,其局限性越来越突出。基于以上原因,被称为“工具” 的第四代编程语言应运而生。这其中包括m i c r o s o f t 公司的v i s u a lb a s i c 、v i s u a l c + + 、v i s u a lf o x p r o 、i n p r i s e 公司的d e l p h i 、c + + b u i l d e r 和p o w e r s o f t 公司的 p o w e r b u i l d e r 。 与其它4 g l 语言相比,对于数据库应用系统强有力的支持是p o w e r b u i l d e r 的一大特色,它提供与当前流行的大型数据库如:o r a c l e 、i n f o r m i x 、s y b a s e 等 的专用接口,并可通过o d b c 与微机数据库连接,具有强大的查询、报表和商 业图形功能,可支持跨平台开发。 p o w e r b u i l d e r 采用真正的面向对象的技术,它将所有的事件、控制、函数和 程序都以对象为单位封装起来,具有“封装”、“多态”、“继承”的属性。 p o w e r b u i l d e r 为开发人员提供了各种工具和一个集成的开发环境创造了应用开 发时所需的各种部件,如窗口、菜单、数据库存取、图形和报表;应用的各种成 分,包括窗口、菜单、程序、数据库存取、数据库管理、图形、报表、调试、编 译等_ 作全都能在p o w e r b u i l d e r 的集成开发环境中完成。p o w e r b u i l d e r 是面向对 象的可视化( v i s u a l ) 编程工具,相对于第三代面向过程编程语言,可让程序员 将更多的精力放到功能的实现而不是界面的实现上来。这些不仅能提高程序员的 第三章系统应用的关键技术 t 作效率,同时还能极大地加快开发进程。 p o w e r b u i l d e r 提供了一个智能型、功能强大的数据窗口对象( d a t a w i n d o w ) , 利用它,软件人员无需编写专门的s q l 语句,就可以实现对后台数据库进行显 示、修改、更新、插入、删除和打印等操作。数据窗口( d a t a w i n d o w ) 是p o w e r b u i l d e r 的专利,也是p o w e r b u i l d e r 应用程序的核心和精华所在。p o w e r b u i l d e r 通过数 据窗口f d a t a w i n d o w ) 建立了用户与数据库间的交互和控制。 在现今众多的数据库应用开发工具中,p o w e r b u i l d e r 是其中的佼佼者。它可 以使应用开发的速度更快、成本更低、质量更高、功能更强。p o w e r b u i l d e r 己成 为c l i e n t s e r v e r 模式应用和基于i n t e m e t 模式应用的主要开发工具之一。 3 6 3 重要的技术点 1 p b 与数据库的连接 p b 支持各种常见的数据库,p b 与数据库的连接建立在驱动程序之上。对于 s y b a s e 、o r a c l e 、i n f o r r n i x 这样的大型数据库管理系统,p b 提供了旨在提高数据 库访问效率的专用数据库接口。对小型数据库( 如x b 嬲e 、a c c e s s 、e x c e l ) 和支 持o d b c 接口的数据库( 如i b m d b 2 ) ,p b 提供了o d b c 接口。 2 ,数据窗口 p b 的成功在很大程度上归功于它拥有专利技术的智能型、功能强大的数据 窗口对象( d a t a w i n d o w ) ,利用它,软件人员无需编写专门的s q l 语句,就可以 实现对后台数据库进行显示、修改、更新、插入、删除和打印等操作。p o w e r b u i l d e r 通过数据窗1 2 1 ( d a t a w i n d o w ) 建立了用户与数据库间的交互和控制。 在数据窗口对象设计的中,有两个基本概念,一是数据源,指数据是选自哪 个数据库的哪个( 些) 表中。p b 提供了5 种数据源:q u i c ks e l e c t 、s q l s e l e c t 、 q u e r y 、e x t e r n a l 、s t o r e dp r o c e d u r e 。二是数据的表现方式,即数据以何种方式呈 现在用户面前,有如下几大类:f r e e f o r n l 、t a b u l a r 、g r i d 、l a b e l 、g r o u p 、g r a p h 、 n u p 、c r o s st a b 、o l e 2 0 、r i c h t e x t 、c o m p o s i t e 。 应用程序中运用数据窗口的基本步骤为: a ) 使用数据窗口画笔创建数据窗口对象; b ) 在窗口上放置数据窗口控件,通过属性设置或编码将数据窗口控件与数 据窗口对象相关联: c ) 针

温馨提示

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

评论

0/150

提交评论