《Web数据库技术》PPT课件.ppt

上传人:za****8 文档编号:7178594 上传时间:2020-03-15 格式:PPT 页数:107 大小:958.52KB
返回 下载 相关 举报
《Web数据库技术》PPT课件.ppt_第1页
第1页 / 共107页
《Web数据库技术》PPT课件.ppt_第2页
第2页 / 共107页
《Web数据库技术》PPT课件.ppt_第3页
第3页 / 共107页
点击查看更多>>
资源描述
第8章Web数据库技术 数据库原理及应用 本章引入 在Internet的热潮席卷之下 原本在单机或局域网中使用的数据库逐步移植至Internet中 Web技术与数据库管理系统 DBMS 相互融合成为必然趋势 数据库厂家和Web公司纷纷推出各自的产品和中间件支持Web技术和DBMS的融合 将两者取长补短 发挥各自的优势 使用户可以在Web浏览器上方便地检索数据库的内容 Web数据库得以迅猛发展起来 本章教学内容 8 1Web数据库的产生与发展 第8章Web数据库技术 教学内容 一 万维网WWW 万维网WWW WorldWideWeb 简称为Web 是欧洲粒子物理实验室的TimBerners Lee于1989年3月提出的 1 什么是万维网WWW 万维网WWW并非某种特殊的计算机网络 而是一个大规模的 联机式的信息储藏所 是一个基于超文本方式的信息检索服务工具 万维网WWW将全世界Internet上不同地点的许多信息资源有机地组织在一起 连结成一个信息网 通过链接的方法 超链接 能够非常方便地从Internet上的一个站点访问另一个站点 从而主动地按需获取丰富的信息 2 万维网最大的特点 万维网最大的特点是拥有非常友善的图形界面 非常简单的操作方法 以及图 文 声 像并茂的显示方式 3 万维网的组成 万维网由分布在全球各地的Web节点组成 Web节点由Web服务器维护和管理的多个Web页面组成 页面是可以包含文本 表格 图像 动画 声音 3D世界 以及其它任何信息的超媒体文档 每个Web节点都有进入该节点的起始页面 称为该节点的 主页 页面与页面之间通过超链接相连 可以从一个页面通过超链接进入同一节点或其它节点上的另一页面 4 万维网的标准 万维网的成功在于其制定了一套简单易用的统一标准 包括 信息资源的统一资源定位符 UniformResourceLocator 简写为URL 超文本标记语言 HyperTextMarkupLanguage 简写为HTML 超文本传输协议 HyperTextTransferProtocol 简写为HTTP 万维网使用统一资源定位符URL来标识网上的各种资源 并使每一个资源在整个Internet的范围内具有唯一的标识符URL 万维网使用超文本标记语言HTML作为制作万维网页面的标准语言 消除了不同计算机之间信息交流的障碍 使任何一台计算机都能显示出任何一个万维网服务器上的页面 万维网以客户机 服务器方式工作 客户机与服务器之间通过超文本传输协议HTTP通信 HTTP协议定义了浏览器怎样向Web服务器请求万维网文档 以及服务器怎样把文档传送给浏览器 它是万维网上能够可靠地交换文件的重要基础 二 Web数据库 在传统的Web服务中 文本和其他多媒体信息都是以文件的形式来进行存储和管理的 随着Web应用领域的不断扩展 信息量的不断增加 静态的Web页面越来越不能满足人们对Web信息服务的动态性 实时性和交互性的要求 为了进行网络上数据的高效存取 实现交互式动态Web页面 就必须以大量数据资源为基础 因此必然要在Web中引入数据库 1 Web数据库的概念 从Web的角度来看待数据库 Web数据库是指将数据库技术与Web技术融合 使数据库成为Web的重要组成部分的数据库 就是用户利用浏览器作为输入界面 输入必要的数据 浏览器将这些数据传送至网站 网站再对输入数据实施处理 并将其执行的结果返回给浏览器 通过浏览器将最终执行结果提交给用户 可以简单地认为 Web数据库就是Internet 数据库 1 Web数据库的概念 Web数据库不仅集合了Web技术和数据库技术的优点 而且使二者都发生了质的变化 Web网页从静态网页发展成了由数据库驱动的动态网页 而数据库实现了开发环境和应用环境的分离 用户端可以用统一的浏览器实现跨平台和多媒体服务 2 通过WWW访问数据库的优点 1 借用现成的浏览器软件 无需开发数据库前端 2 标准统一 开发过程简单 3 交叉平台支持 三 Web数据库的发展阶段 Web数据库发展到现在 经历了三个发展阶段 1 第一阶段 第一阶段 Web数据库提供静态访问和静态内容应用 早期的Web数据库提供静态文档的管理和访问 程序员根据数据库内容用HTML编写Web页面 用户对数据库的访问实际是对该静态HTML文档的访问 第一阶段Web数据库是在还没有出现Web数据库访问技术的时候产生的 基本只是Web技术 缺点 不能实时访问 数据库维护工作量很大 2 第二阶段 第二阶段 Web数据库提供静态访问和动态内容应用 实现基于数据库的动态文档的管理和访问 在第二阶段的Web数据库中 使用通用Web网关接口编程 使数据库能与Web服务器直接连接 实时动态地将数据库的信息反映在页面上 用户访问的是静态的HTML文档 但文档内容是随着数据库而改变的动态内容 缺点 不能保持数据库连接状态 存在性能瓶颈 缺少扩展性和保密性 3 第三阶段 第三阶段 Web数据库除了提供第二代Web数据库的功能外 还能提供基于Web的联机事务处理能力 在Web的客户端与服务器端实现了动态和个性化的交流和互动 第三阶段的Web数据库使所有对数据库的操作 增加 删除 修改 信息的查询和管理都通过统一标准的Internet浏览器界面来进行 更加适应Internet技术的发展和网络互连的需要 8 2Web数据库系统的体系结构 第8章Web数据库技术 教学内容 引入 数据库系统的体系结构是指在计算机系统环境下数据库管理系统及其数据库应用系统的体系结构 数据库系统的体系结构与数据库系统的应用环境是密切相关的 随着计算机技术的发展以及数据库系统应用环境的演变 数据库系统的体系结构也在不断地演变 随着计算模式经历了集中式模式 C S模式和B S模式三个阶段的发展 数据库系统也随之出现了相应的体系结构 一 数据库的客户机 服务器体系结构 1 客户机 服务器体系结构客户机 服务器 C S 结构是以计算机网络环境为基础 将计算任务有机地分配给多台计算机的计算模式 客户机 服务器结构由三部分组成 客户机 服务器 客户机和服务器之间的连接支持 1 客户机 服务器体系结构 1 客户机客户机一般是一台面向最终用户 运行前端应用程序且提供外围开发工具 并通过网络获得服务器服务的微型计算机 2 服务器服务器一般是具有高档硬件资源和高性能软件资源的多用户计算机系统 3 连接支持是一种实现客户机和服务器之间连接和通信的标准网络接口和标准软件接口 2 客户机 服务器结构数据库系统 客户机 服务器结构的数据库系统是把DBMS功能和应用分开 使网络中某个 些 结点上的计算机专门用于执行DBMS的功能 称为数据库服务器 其它结点上的计算机安装DBMS的外围开发工具 支持用户的应用 称为客户机 或应用服务器 二者相结合 协同工作 其基本思想是服务器资源共享 但功能是分布的 它把单机环境下的DBMS功能在网络 包括多台计算机 环境下进行合理的分布 在客户机和服务器之间作适当的配置 2 客户机 服务器结构数据库系统 在服务器一端完成DBMS的核心功能 包括接收来自客户端的数据库请求 处理数据库请求 进行安全性确认和完整性检查等 在客户端放置应用开发工具 完成管理用户界面 接受用户数据 处理应用任务 生成数据库请求并向服务器发出数据库请求 从服务器接受结果并格式化结果等 网络中间软件则遵循一定标准 负责透明地连接客户机与服务器 提供了访问数据库的统一界面 二 基于浏览器 服务器模式的Web数据库 浏览器 服务器 B S 计算模式是随着Internet技术的迅猛发展而发展起来的一种新型的网络计算模式 B S结构是Internet技术和数据库技术相结合的过程中形成的数据库系统体系结构 B S结构代表了当前数据库应用软件技术发展的趋势 是目前人们开发Web数据库系统普遍采用的数据库系统结构 B S结构是C S结构的继承和发展 从本质上讲 B S计算模式和C S计算模式都是一种请求 应答方式 但C S计算模式需要在客户机上装载大量的应用软件 负担较重 而B S计算模式是一种基于Hyperlink 超链接 HTML 超文本标记语言 Java的三层C S结构 客户机上只需安装单一的浏览器软件 负担很轻 因此是一种全新的体系结构 1 B S结构概述 B S结构将数据处理过程分为表示层 功能层和数据层三部分 分别由Web浏览器 具有应用程序扩展功能的Web服务器和数据库服务器实现 2 三层B S结构的数据库系统 表示层位于客户端 表示层的任务是由Web浏览器向网络上的某一Web服务器提出服务请求 Web服务器用超文本传输协议和超文本标记语言来描述和组织信息 把所需的主页传送给客户端 客户机接受传来的主页文件 并把它显示在Web浏览器上 功能层位于第二层 功能层的任务是接受用户的请求 与数据库进行连接 通过SQL等方式向数据库服务器提出数据处理申请 并将数据库服务器的数据处理结果传送回客户端 数据层位于第三层 数据层的任务是接受Web服务器对数据库操纵的请求 实现对数据库查询 修改 更新等功能 把运行结果提交给Web服务器 在B S结构中 可将数据库服务器端进一步分解成一个Web服务器和一个或多个数据库服务器 3 多层B S结构的数据库系统 1 规范和统一了客户端程序的标准 浏览器模式 减轻了客户端的压力 解决了C S结构中客户端程序的异构性和跨平台性 2 将用户交互 应用业务处理和数据管理三者相互彻底分离 从而方便进行严格的安全管理 提高程序的可维护性 使其各自完成其擅长和应该完成的任务 3 在表示层对数据的输入进行分析检查 可尽早消除错误输入 减少网上传输的数据量 加快响应速度 4 B S结构数据库系统的优点 4 软件维护开销能够大大降低 5 充分发挥了DBMS高效的数据存储和数据管理能力 把传统的数据库访问 存取和维护等技术应用于Internet的Web之上 实现了更大程度和更大范围的数据库资源共享 4 B S结构数据库系统的优点 8 3Web数据库访问技术 第8章Web数据库技术 教学内容 引入 Web数据库系统的主要目的是要实现Web与数据库的连接以产生基于数据库的动态页面 这要通过Web访问数据库来实现 相关的技术我们称之为Web数据库访问技术 也称为动态页面技术 一 对Web数据库访问技术的要求 1 高效性 2 安全性 3 客户端的简洁性 4 开放性 异构性 5 可扩展性 二 Web数据库访问技术的种类 1 基于中间件的Web数据库系统2 基于客户端的Web数据库系统3 上述两种方法的组合 1 基于中间件的Web数据库系统 是在Web服务器端提供中间件来连接Web服务器和数据库服务器 常用的中间件技术有通用网关接口 CGI 应用程序编程接口 WebAPI ODBC JDBC ADO ADO NET等 这些技术的特点是采用Web服务器作为通信中介 由Web服务器启动应用程序 并由应用程序完成数据库的访问 结果信息再经Web服务器返回客户端浏览器 2 基于客户端的Web数据库系统 是把应用程序下载到客户端运行 在客户端直接访问数据库服务器 例如 JavaApplet等 3 上述两种方法的组合 第三种方式可看成是上述两种方法的组合 在服务器端提供中间件 同时将应用程序的一部分下载到客户端 并在客户端通过WebServer及中间件访问数据库 这些方案各有其优缺点 用户可以根据具体需要 选择相应的技术 目前采用最多的解决方案是第一种 三 Web数据库设计的一般过程 1 Web数据库的环境 包括Web服务器 客户机 数据库服务器 网络 客户端必须有能够解释执行HTML代码的浏览器 Web服务器中必须具有能执行可以自动生成HTML代码的程序的功能 如ASP CGI等 后台具有能自动完成数据操作指令的数据库系统 如Access SQLServer等 2 设计过程 Web数据库设计的一般过程 1 建立网站服务器 2 选择作为Web数据库的数据库管理系统 设计和创建数据库 3 设计数据库访问接口 4 设计Web数据库应用程序 5 检测 调试 8 4数据库访问接口 第8章Web数据库技术 教学内容 一 数据库访问接口概述 随着网络计算模式的发展 中间件日益成为软件领域中新的热点 1 中间件 1 定义中间件是一个用API定义的软件层 是具有强大通信能力和良好可扩展性的分布式软件管理框架 2 功能是在客户机和服务器或者服务器和服务器之间传送数据 实现客户机群和服务器群之间的通信 中间件在整个分布式系统中起数据总线的作用 各种异构系统通过中间件有机地结合成一个整体 1 中间件 3 工作流程在客户机里的应用程序需要网络上某个服务器中的数据或服务时 应用程序需访问中间件 中间件将查找数据源或服务 并在发送应用程序请求后重新打包响应 将其传回应用程序 2 数据库访问接口 数据库访问接口 即数据库中间件 是所有中间件中应用最广 发展前景最好的一种中间件 作为前端客户机和后端数据库之间的一个中间层 数据库访问接口负责接收客户端的数据请求 做一些简单处理后 把请求再传递给相应的后端数据库服务器 进行最后的数据处理 然后再将结果由数据库中间件返回给客户端 常用数据库中间件编程技术有CGI WebAPI ODBC JDBC ADO ADO NET 二 CGI 通用网关接口CGI CommonGateInterface 是最早普遍使用的Web数据库访问技术 几乎所有的Web服务器都支持它 1 CGI概述 CGI定义了服务器和外部应用程序之间的标准通信接口 它打破了服务器软件的局限性 允许用户根据需要采用各种语言去实现无法用HTTP HTML实现的功能 给WWW提供了更为广阔的应用空间 2 CGI工作过程 遵循CGI标准编写的服务器端的可执行程序称为CGI程序 CGI的主要功能就是在Web服务器程序和CGI程序之间传递信息 1 Web浏览器向Web服务器发出请求 该请求含请求服务的类型 服务程序路径 CGI程序名称及用户数据等 CGI的工作方式图 2 Web服务器通过CGI定义的通信接口 把用户发来的请求通过标准输入 包括环境变量 命令参数等 发送给CGI程序 3 CGI程序解析和处理用户请求 打开同DBMS的连接 与DBMS交互 按照用户的需求 对数据库进行查询或更新 4 CGI程序可根据从数据库中检索所得到的数据生成动态的HTML文档 通过标准输出将其发送给Web服务器 5 Web服务器将HTML文档返回给Web浏览器 然后关闭与服务器的连接 3 利用CGI应用程序连接数据库的优点 1 CGI程序可以用任何程序设计语言编写 如C C Delphi VisualBasic或Perl等 2 CGI的跨平台性能极佳 CGI的应用程序可以移植到绝大部分操作系统上 3 CGI开发的比较早 相对比较成熟 因此 目前几乎所有的Web服务器均支持CGI 4 CGI方法的缺点 1 最大的缺点是需要消耗大量的系统资源 2 CGI程序开发复杂 需要许多底层开发的知识 编写比较困难 3 数据传输的方法不稳健 效率低下 4 不具备事务功能 5 安全性差 缺少用户访问控制 对数据库难以设置安全访问权限 三 WebAPI 为了克服CGI的局限性 一种基于共享CGI程序的改进方案应运而生 这就是应用程序编程接口WebAPI 1 WebAPI概述 WebAPI是某个Web服务器开发商为其产品用户开发类似于CGI程序的服务器端扩展程序所提供的专用编程接口 用户利用WebAPI可以完成CGI程序所能实现的功能 并且维持服务器较好的性能 2 WebAPI的优缺点 用WebAPI开发程序 性能大大优于CGI程序 WebAPI的出现解决了CGI的低效问题 但WebAPI的缺陷也是很明显的 1 开发API程序比开发CGI程序复杂得多 2 各种不同的API互不兼容 缺乏一个统一的业界标准 用某种API编写的程序只能在特定的Web服务器上运行 使用范围受到极大的限制 四 ODBC ODBC是 开放数据库互连 OpenDatabaseConnectivity 的简称 ODBC是Microsoft公司提出的应用程序通用编程接口标准 用于对数据库的访问 ODBC为数据库用户和开发人员屏蔽了异构环境的复杂性 提供了数据库访问的统一接口 为应用程序实现与平台的无关性和可移植性提供了基础 因而ODBC获得了广泛的支持和应用 1 ODBC概述 ODBC定义了一个基于SQL的 公共的 与数据库无关的API 应用程序设计接口 使每个应用程序利用相同的源代码就可访问不同的数据库系统 存取多个数据库中的数据 从而使得应用程序与数据库管理系统 DBMS 之间在逻辑上可以分离 使应用程序具有数据库无关性 也就是说 用ODBC生成的程序是与数据库或数据库引擎无关的 2 ODBC的组成与结构 ODBC应用体系结构主要由客户端的数据库应用程序 ODBC应用程序接口 ODBCAPI ODBC驱动程序管理器 ODBCDriverManager 驱动程序 Driver 数据源 DataSource 不同RDBMS及其DB构成的数据库平台等组成 客户端数据库应用程序提供系统与用户的界面 是用宿主语言 ODBC函数和SQL语句编写的访问数据库的应用程序 ODBC应用程序接口是一种使用ODBC技术实现应用程序与数据库互连的标准接口 ODBC驱动程序管理器用于管理系统中存在的各种驱动程序 驱动程序是一个用于支持ODBC函数调用的模块 通常是一个动态链接库DLL 不同RDBMS的驱动程序是不同的 每种数据库都要向ODBC驱动程序管理器注册它自己的驱动程序 数据源是驱动程序与数据库系统连接的桥梁 它不是数据库系统 而是用于表达ODBC驱动程序与DBMS特殊连接的命名 3 ODBC的接口函数 ODBC实质上可以看成是一个由数据库应用程序访问的调用函数库 应用程序通过这些函数可操纵数据库中的数据 ODBC为应用程序提供的这些调用函数可以分成六组 分配和释放内存函数 连接函数 执行SQL语句函数 接收结果函数 事务控制函数 错误处理函数和其他功能函数 4 ODBC的基本工作流程 1 初始化建立ODBC环境 环境句柄 建立应用程序与数据源的连接建立语句句柄 为ODBC调用执行SQL语句作好准备 2 SQL处理执行SQL语句 对数据库进行插入 删除 修改和查询操作 3 终止通过释放语句句柄函数 释放连接句柄函数 释放环境句柄函数的执行 释放各种资源 五 JDBC JDBC是SUN公司针对Java语言提出的与数据库连接的API标准 与ODBC类似 JDBC是特殊类型的API 这些API支持对数据库的连接和基本的SQL功能 包括建立数据库连接 执行SQL语句 处理返回结果等 与ODBC不同的是 JDBC为单一的Java语言的数据库接口 而ODBC不适合直接在Java中使用 因为它使用C语言接口 1 JDBC概述 JDBC由一群类和接口组成 通过调用这些类和接口所提供的方法 Java程序可以连接不同的数据库 对数据库下达SQL命令并取得行结果 JDBC主要有两种接口 面向程序开发人员的JDBCAPI和面向底层的JDBCDriverAPI JDBCAPI是面向程序开发人员的 对用户友好的 高级接口 它定义了Java中的类 用来表示数据库连接 SQL指令 结果集合 数据库图元数据等 通过驱动程序管理器 JDBCAPI可以利用不同的驱动程序连接不同的数据库系统 JDBCDriverAPI是面向驱动程序开发商的基础接口 在它之上可以建立高级接口和工具 2 JDBC的体系结构 JDBC的体系结构主要由客户端的Java JSP应用程序 JDBC应用程序接口 JDBCAPI JDBC驱动程序管理器 JDBC驱动程序 不同的数据库平台等组成 与ODBC一样 JDBC的体系结构同样有一个JDBC驱动程序管理器作为Java应用程序与数据库的中介 它把对数据库的访问请求转换和传送给下层的JDBC驱动程序 或者转换为对数据库的固有调用 更多的实现方式是通过JDBC ODBC桥接驱动程序 转化为一个ODBC调用 进行对数据库的操作 这是目前知晓的四种JDBC驱动程序 3 JDBC驱动程序的类型 JDBC驱动程序可分为以下四个种类 1 JDBC ODBC桥加ODBC驱动程序 2 本地API 3 网络协议纯Java驱动程序 4 本地协议纯Java驱动程序 1 JDBC ODBC桥加ODBC驱动程序 JavaSoft公司的桥产品利用ODBC驱动程序提供JDBC访问 这类驱动程序的特色是必须在使用者端的计算机上事先安装好ODBC驱动程序 然后通过JDBC ODBC的调用方法 把JDBC操作翻译成对应的ODBC调用 进而通过ODBC类存取数据库 2 本地API 这种类型的驱动程序也必须先在客户机上安装好特定的驱动程序 然后通过JDBC本地API桥接器的转换 把JAVAAPI调用转换成特定驱动程序的调用方法 利用客户机上的本地代码库与数据库直接进行通信 3 网络协议纯Java驱动程序 通常 这是最为灵活的JDBC驱动程序 能够发布到Internet上 与数据库产品无关 为了支持Internet访问 必须处理Web所提出的安全性 通过防火墙的访问等方面的额外要求 这种驱动程序将JDBC转换为与DBMS无关的网络协议 之后这种协议又被某个服务器转换为一种DBMS协议 这种网络服务器中间件能够将它的纯Java客户机连接到多种不同的数据库上 所用的具体协议取决于提供者 4 本地协议纯Java驱动程序 这种类型的驱动程序将JDBC调用直接转换为DBMS所使用的网络协议 它允许从客户机机器上直接调用DBMS服务器 4 JDBC的工作流程 使用JDBC连接数据库的基本步骤是 注册和加载驱动器 建立连接 创建语句对象 执行查询语句 查询结果处理及关闭结果集对象 关闭语句对象 关闭连接 六 ADO ActiveX数据对象 ActiveXDataObject 简写为ADO 是允许用户与数据存储进行交互的组件 是ASP的内置组件之一 通常也称ADO组件 1 ADO概述 ADO是Windows的开放服务体系的标准组成部分 是人们广泛接受的用于数据库访问的应用程序接口 是一项容易使用并且可扩展的将数据库访问添加到Web页的技术 ADO并不是一种新技术 而是采用现有的数据库访问技术 并把这些不同的数据库访问技术融合在一起 形成一种适应需要的方法 它提供了一个简单的程序化模型和完善的数据处理功能 2 ADO对象模型 ADO是采用层次框架实现的 其层次结构如图所示 ADO定义了7种独立的对象 Connection对象 Command对象 Recordset对象 Field对象 Parameter对象 Property对象和Error对象 Connection对象是其他对象与集合的基础 Connection对象包含了一个Errors集合和一个Error对象 用来记录连接过程中所发生的错误信息 Command对象包含了一个特有的Parameters集合和一个Parameter对象 用来传递Command对象所需的命令参数 Recordset对象包含了一个Fields集合和一个Field对象 用来记录Recordset对象中各个字段的相关属性 在ADO的7个对象中 Connection对象 Command对象和Recordset对象是使用最多的三个主要对象 通过这些对象与集合 用户可以很方便地建立数据库连接 执行SQL查询以及存取查询结果等 2 ADO对象模型 ADO各个对象之间的相互关系图 两个重要关系 Connection对象和Command对象使用Execute方法可以产生一个Recordset对象 两个重要关系 Recordset对象和Command对象使用ActiveConnection属性可以产生一个Connection对象 3 ADO对象功能 1 Connection对象 连接对象用于建立Web服务器到数据源的连接 其它两个内部对象 Command对象和Recordset对象对数据库的任何操作都要通过Connection对象才能够完成 2 Recordset对象 记录集对象是对从基本表或命令执行的结果所得到的整个记录集合的封装 其数据结构可认为与表相同 利用Recordset对象可以非常方便地实现对数据库的各种操作和控制 3 ADO对象功能 3 Command对象 命令对象主要功能是让服务器执行SQL命令或服务器端的存储过程 4 Field对象 域对象Recordset对象有一个十分有用的对象集合Fields Fields由多个Field对象组成 Field对象代表一列普通数据类型数据 每个Field对象对应于Recordset对象中的一列 5 Parameter对象 参数对象代表SQL存储过程或有参数查询中的一个参数 3 ADO对象功能 6 Property对象 属性对象代表数据提供者的具体属性 ADO对象有两种类型的属性 内置属性和动态属性 内置属性是指那些已在ADO中实现并且任何新对象可以立即使用的属性 Property对象是基本提供者所定义的动态属性的容器 7 Error对象 错误对象代表ADO错误 用来表示方法调用失败所产生的某个错误 4 ADO和数据库的连接 通过ADO访问数据库有两种途径 一种是通过ODBC驱动程序 另一种是通过数据库专用的OLEDBProvider 后者有更高的访问效率 七 ADO NET ADO NET是微软的新一代数据访问标准 它是为了广泛的数据控制而设计的 而不仅仅为数据库应用 所以使用起来比以前的ADO更灵活 更有弹性 也提供了更多的功能 提供了更有效的数据存取 它采用面向对象结构 采用业界标准的XML作为数据交换格式 能够应用于多种操作系统环境 1 ADO NET发展 随着公共语言运行库和 NET框架的出现 微软为 NET框架设计了一个新的数据访问对象模型ADO NET ADO NET用微软 NET框架的托管代码创建 这意味着它可以享受到类型安全和内存管理环境的种种好处 使之成为优于ADO的一个更为稳健的数据库访问平台 作为一种数据库访问框架 ADO NET在ADO的基础上进行了重新设计 使它能处理当今n层的Web应用程序所要求的非连接数据体系结构 总之ADO NET是在ADO的基础上发展起来的 但又不是简单的升级 它在简化编程 维护和效能方面都做了相当大的改进 ADO NET是一项全新的技术 需要采用一种新的思维模式来对待 2 ADO NET模型 ADO NET提供了功能强大的数据访问接口 其数据的连接有两种方式 断开连接与直接连接 因此ADO NET对象模型分为 连接的对象 和 断开连接的对象 两部分 连接的对象 主要有Connection对象 Command对象 DataReader对象等 这些对象直接与数据库通信 以管理连接和事务 以及从数据库检索数据和向数据库提交所做的更改 断开连接的对象 主要有数据集DataSet对象以及它所包括的DataTable和DataRelation对象等 它们允许用户脱机处理数据 以便更好地提高系统效率 2 ADO NET模型 ADO NET对象模型的两个核心成员是 NET数据提供程序和DataSet对象 NET数据提供程序是数据库的访问接口 负责建立连接和数据操作 它作为DataSet对象与数据源之间的桥梁 负责将数据源中的数据取出后置入DataSet对象中 或将数据存回数据源 DataSet是非连接的 位于内存中的数据存储 主要负责对数据的操作 DataSet是专门为独立于任何数据源的数据访问而设计的 因此 它可以用于多种不同的数据源 可以使用XML数据 3 NET的数据提供程序 NETFramework数据提供程序在数据源和代码之间创建了一个最小层 以便在不以功能为代价的前提下提高性能 到目前为止 可用的 NET主要数据提供程序 提供者 有4个 这4个数据提供程序中的每一个都有一个特定的目的 并且都提供对特定类型数据源的托管访问 1 SQLServer NETFramework 这个数据提供者专用于SQLServer数据库 它使用SQL快速的 本地的TCP IP接口 提供快速 健壮和可靠的访问SQLServer的方法 可以直接访问SQLServer而不用添加OLEDB或ODBC层 因此它是轻量的 并具有良好的性能 2 OLEDB NETFramework OLEDB数据提供程序可使用任何OLEDB数据提供程序来处理数据 但是这个提供者必须使用COMInterop层 因此 在 NETFramework中使用OLEDB时 将会增加系统的额外开销 通常 人们使用OLEDB NET数据提供者与Access数据库 MicrosoftExchange进行通信 3 Oracle NETFramework 该数据提供程序支持使用Oracle客户端软件提供的Oracle调用接口 OC 访问Oracle数据库 如果使用的是Oracle数据源 则使用这个数据提供者将能得到更快的速度和更可靠的性能 Oracle NETFramework数据提供程序要求必须先在系统上安装Oracle客户端软件 8 1 7版或更高版本 才能连接到Oracle数据源 4 ODBC NETFramework 如果数据源不是SQLServer Oracle或Access 也不是通过OLEDB驱动程序能够访问的其他数据源 则惟一的选择就是使用ODBCProviderfor NET ODBC NETFramework数据提供程序使用本机ODBC驱动程序管理器 DM 启用数据访问 微软的 NETODBCProvider是为了向后兼容而采取的措施 它不是一个高性能的数据提供者 4 ADO NET和ADO的比较 因为ADO NET是从ADO发展而来的 它与ADO有许多相似性 然而 ADO NET在ADO的基础上做了很大的改进 1 数据表现形式 在ADO中 数据在内存中表示的形式为记录集 RecordSet 而在ADO NET中 它以数据集 DataSet 为主要表现形式 记录集好比一个单独的表 数据集可以包含多个截然不同的表 还能够维护表之间的关系 当要访问的数据来自多个关联的表时 ADO NET比ADO对数据的访问更优越 因为数据集可以包含这样的数据 而记录集则不能 2 数据访问 ADO和ADO NET之间的另一个重要差别在于它们数据访问方式不同 ADO通过MoveNext方法顺序扫描记录集的行 而在ADO NET中 数据集 DataSet 除了支持顺序访问之外 还允许对数据表中的行号进行随机访问 相比之下 在ADO NET中数据访问变得更加容易 更加快速 3 断开连接方式的数据访问 在ADO中 记录集也可以实现断开连接方式的数据访问 但是这种连接方式效率不高 而且不是彻底的断开连接方式 而ADO NET则使用数据集完全实现了与数据源的断开连接方式 ADO通过调用OLEDB提供者与数据库通信 而ADO NET则使用数据适配器与数据库进行通信 这个适配器可以采用不同的方式与不同类型的数据源进行通信 4 在应用程序之间共享数据 ADO通过COM调度机制传输记录集 而ADO NET则使用XML以数据集的形式传输数据 同COM调度相比 使用XML传输数据具有许多优点 更丰富的数据类型 更高的性能 能够穿透防火墙等 8 5动态页面开发技术 第8章Web数据库技术 教学内容 一 ASP技术 ASP ActiveServerPages 动态服务器主页 是目前非常流行的开放式Web服务器应用程序开发技术 ASP属于ActiveX技术中的服务器端技术 ASP中的命令和Script语句都是由服务器来解释执行的 执行结果产生动态生成的Web页面并送到浏览器 1 ASP文件 ASP通过扩展名为 asp的ASP文件来实现 一个ASP文件相当于一个可执行文件 因此必须放在Web服务器上有可执行权限的目录下 ASP文件是一个文本文件 它可以包括下列元素的任意组合 文本 text HTML标记 tags Script命令 2 ASP的工作流程 当用户通过浏览器向Web服务器申请一个 asp主页时 Web服务器响应该请求 调用ASP引擎 解释执行将被请求的 asp文件中的每一个命令 动态生成一个HTML页面 并送到浏览器 当遇到任何与ActiveXScriptng兼容的脚本 如VBScript JavaScript 时 ASP引擎会调用相应的脚本引擎进行处理 若脚本中含有访问数据库的请求 就通过ODBC或OLEDB与后台数据库连接 由数据库访问组件执行访库操作 它依据访问数据库的结果集自动生成符合HTML的主页 以响应用户的请求 二 PHP技术 PHP是一种用于创建动态Web页面的服务器端HTML嵌入式脚本语言 它与ASP相似 用户可以混合使用PHP和HTML编写Web页面 当访问者浏览到该页面时 服务端会首先对页面中的PHP命令进行处理 然后把处理后的结果连同HTML内容一起传送到访问端的浏览器 PHP脚本语言的语法结构与C语言和Perl语言的语法风格非常相似 二 PHP技术 与ASP不同的是 PHP是一种源代码开放程序 拥有很好的跨平台兼容性 用户可以在WindowsNT系统以及许多版本的UNIX系统上运行PHP 而且可以将PHP作为Apache服务器的内置模块或CGI程序运行 PHP最大的特点是它强大的数据库支持功能 使它能够访问几乎目前所有较为流行的数据库系统 但是一般来说PHP和MYSQL是最佳的搭配 三 Servlet技术 同其他Web动态页面开发技术相比 Servlet具有更好的性能和开发效率 1 Servlet技术概述 Servlet是用Java语言编写的运行在服务器端的Java小程序 它在初始化时装入Web服务器的存储空间 并成为服务器的一个组成部分 Servlet使用JavaServletAPI及相关类编程 ServletAPI能融合在不同的Web服务器中 2 Servlet的工作流程 当启动Web服务器或Web浏览器第一次请求服务时 系统自动装入Servlet并使Servlet保持运行状态 每当客户端发来请求时 服务器都会启动一个线程与客户端交互 Web服务器收到请求后 加载相应的Servlet 同时把用户请求信息传给该Servlet Servlet分析用户请求信息 生成对应的SQL语句并执行 通过JDBC访问数据库服务器中的数据库 获得响应的结果集 生成HTML页面返回到客户端 四 JSP技术 JSP是由Sun公司倡导 许多公司参与 一起建立的一种动态网页技术标准 是一种很容易学习和使用的 在服务器端编译执行的Web数据库系统应用程序编程语言 1 JSP文件 JSP的脚本语言采用Java 完全继承了Java的所有优点 在传统的网页HTML文件中加入Java程序片段和JSP标记 就构成了JSP网页 JSP文件的扩展名通常是 jsp 并且一般放在网页存放的地方 2 JSP的工作原理 JSP的工作是基于Servlet的 当用户第一次对JSP页面进行请求 Web服务器首先将它编译成对应的Servlet 并启动该Servlet的一个线程与客户端进行交互 以后只要这个Servlet不丢失 所有客户端对该JSP页面的请求都是由Servlet的一个线程响应的 Web服务器会执行该Servlet 将执行结果以HTML格式返回给客户 3 使用JSP访问数据库 使用JSP访问数据库有两种技术方案 一种是JSP JavaBean JDBC 另外一种是JSP JavaServlet JavaBean JDBC 该技术方案通过JSP直接实现对客户端的应答 当客户的请求提交到JSP时 通过JavaBean将运行的结果再退回给客户端 尽管这种技术方案十分适合简单应用的需要 它却不能满足复杂的大型应用程序的实现 它吸取了JSP和JavaServlet技术各自的突出优点 用JSP实现表示层 让Servlet完成深层次的处理任务 即实现应用层 该方案清晰地分离了表达和内容 明确了角色的定义以及应用程序开发者与网页设计者的分工 事实上 项目越复杂 使用第二种技术方案的好处就越大 4 JSP的优点 JSP的优点具体体现在以下方面 1 将内容的生成和显示进行分离 2 可重用的组件3 用动作标识简化页面开发
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!