收藏 分享(赏)

DotNET精髓 - Web服务原理与开发.docx

上传人:oceanpvg 文档编号:3404451 上传时间:2018-10-24 格式:DOCX 页数:477 大小:2.93MB
下载 相关 举报
DotNET精髓 - Web服务原理与开发.docx_第1页
第1页 / 共477页
DotNET精髓 - Web服务原理与开发.docx_第2页
第2页 / 共477页
DotNET精髓 - Web服务原理与开发.docx_第3页
第3页 / 共477页
DotNET精髓 - Web服务原理与开发.docx_第4页
第4页 / 共477页
DotNET精髓 - Web服务原理与开发.docx_第5页
第5页 / 共477页
点击查看更多>>
资源描述

1、NET 精 髓 Web服 务 原 理 与 开 发前沿软件研究室 主编 郑小平 编著 人民邮电出版社 图书在版编目( CIP)数据 .NET 精髓 Web 服务原理与开发 / 前沿软件研究室,郑小平编著.北京:人民邮电出版社, 2002.1(.NET 平台研究与开发丛书)ISBN 7-115-09980-4I. N II. 前郑 III. 计算机网络 程序设计 IV. TP393中国版本图书馆 CIP 数据核字(2001)第 096532 号.NET 平 台 研 究 与 开 发 丛 书.NET 精 髓 Web 服 务 原 理 与 开 发编 著 责 任 编 辑 杨 璐人 民 邮 电 出 版 社 出

2、 版 发 行 北 京 市 崇 文 区 夕 照 寺 街 14 号 邮 编 100061 电 子 函 件 315 网 址 http:/读 者 热 线 : 010-67129212 010-67129211( 传 真 )北 京 汉 魂 图 文 设 计 有 限 公 司 制 作印 刷 厂 印 刷 新 华 书 店 总 店 北 京 发 行 所 经 销开 本 : 7871092 1/16印 张 : 29.25字 数 : 707 千字 200 年 月第 1 版印 数 : 1- 000 册 200 年 月 北 京 第 1 次 印 刷ISBN 7-115-09980-4/TP2692定 价 : 53.00 元本 书

3、 如 有 印 装 质 量 问 题 , 请 与 本 社 联 系 电 话 : (010)67129223丛 书 序 言2000 年 7 月在美国奥兰多举行的专业开发者大会上, 微软公司展示了它最新 的 .NET 体 系 , 众 多 的 发 言 人 向 大 会 介 绍 了 .NET 的特征和构成。从此,软件业界 就 开 始 掀 起 了 一 股 “.NET”热 潮 。 通 过 .NET, 微 软 公 司 公 司 为 人 们 提 供 了 一 种 全 新的开发平台, 这个平台将推动以新体系为基础的协同 Web 应用开发。 微软公司 推 出 Visual Studio.NET 的 目 的 就 是 要 推 进

4、 网 络 应 用 软 件 的 开 发 , 使 用 Visual Studio.NET 开发系统可以编写最简单的基于 Windows 的单层应用软件, 也可以编 写 Windows 下的客户服务器多层应用软件。无论是为 Windows 还是为 Web, Visual Studio 都在各个层面上作了大量的工作。Visual Studio.NET 与以往的版本相比发生了巨大的变化,这种变化主要来自 以下两个方面。一 是 语 言 本 身 的 改 进 和 .NET 平台的建立。无论是在网络应用还是在本地应用 上,都对各种语言做了许多改进,特别是用崭新的 C#语 言 代 替 了 J+。 C#具 有 简

5、捷、 灵活、 安全、 面向对象和兼容性强等许多优点 , 是. NET 中的旗帜语言。 此外, Visual Basic 第 一 次 成 为 真 正 面 向 对 象 的 语 言 ; C+大 大 增 强 了 对 Web 的集成和对 ATL 的支持。二是开发环境的重大改变。 首先, 在一个开发环境中同时集成了 Visual Basic、 Visual C+、 C#和 FoxPro。 其 次 , 开 发 环 境 的 适 应 性 大 大 增 强 了 , 适 用 于 快 速 Web 应 用 软 件 的 开 发 , 可 以 轻 松 地 运 用 XML 和 Web 服 务 进 行 跨 平 台 计 算 , 也

6、可 以快速开发中间层商务组件。再次,调试功能增强了,可以在 Visual Studio.NET 中端对端地调试 Web 应用软件 , 可以同时调试用不同语言开发的应用程序, 也可以调试工程、进程和存储等过程。这些新特性使用户的开发效率有了大幅度的提 高。为了让广大程序开发人员和编程爱好者们对 Visual Studio.NET 有比较系统和 全面的了解,我们特编写此套丛书。目前丛书共出版了以下 5 册: C#语言程序设计 基于 Microsoft.NET Framework SDK, 完整地介绍了 C#语 言 的 体 系 、 语 法 和 各 种 特 性 , 力 图 通 过 本 书 使 读 者

7、对 C#语 言 本 身 有 较 深 刻的理解。 Visual C#.NET 开发实践 基 于 Microsoft Visual Studio.NET 7.0,具有很强的可操作性。通过本书的介绍,读者可以快速地掌握运用 V isual C#.NET进行实际开发的方法。.NET 精 髓 Web 服务原理与开发2 Visual C+.NET 核心编程与开发实例 讨论了 C+最 核 心 的 技 术 ,特别是对组件对象模型进行了深入的介绍,并对 MFC 和 ATL 进行了非常具体的 讲解。 Visual Basic.NET 与数据库开发 介 绍 了 Visual Basic 的 新 特 性 , 并通过精

8、选的实例详细讲解了用 Visual Basic.NET 开发几种典型数据库的完整方法。 .NET 精 髓 Web 服务原理与开发 介绍 Web 服务开发的各个技术细节,力求使读者对 Web 服务有一个全面的认识,为开发 Web 服务的程序员 提供最新最完整的技术参考,并通过大量短小精悍的实例说明每个协议、规范的 应用或实现方法。编 者内 容 提 要随 着 互 联 网 技 术 的 进 步 以 及 商 业 企 业 对 互 联 网 依 赖 性 的 增 强 , 软 件 越 来 越 需 要 集 成 到 Internet 上 来 , 需 要 和 Internet 上 的 其 他 软 件 ( 而 不 光 是

9、 人 ) 进 行 交 互 。 Web 服务是基于网络 的 软 件 开 发 模 式 , 通 过 规 范 性 的 设 计 、 发 布 和 发 现 , 以 及 调 用 , 可 以 由 多 个 Web 服务构建一 个 完 整 的 商 业 企 业 应 用 。本书首先系统地介绍了 Web 服务的概念以及与它相关的协议和技术规范,包括 XML、 XSD、 SOAP、 WSDL 和 UDDI 等。在介绍这些规范的时候,作者力求通过详实且有针对性 的实例加深对这些抽象技术的理解和掌握。 本书的后面还介绍了专门用于 Web 服务的开发工 具, Visual Studio .NET 和 SOAP Toolkit,

10、前者可以快速地开发应用于 .NET 平台的 Web 服务 , 而后者可以把传统的 COM 模块转换为 Web 服 务 。 读 者 掌 握 了 这 两 个 工 具 , 有 助 于 学 习 和 使 用 其 他 类 似 的 开 发 工 具 。编 者 的 话也许您已经听说过 Web 服务 ( Web Services) ,如果还没有,就赶快抓紧时间去了解它。 在最近不到 1 年 的 时 间 里 , Web 服 务 已 经 快 速 席 卷 了 软 件 业 , 在 不 久 的 将 来 , 它 将 会 构 建 互 联网应用的新模式。无论是软件开发人员,还是企业管理者,都必须对这一崭新的技术投入 足 够 的

11、重 视 , 因 为 它 势 必 影 响 个 人 或 企 业 的 前 途 。Microsoft.NET 与 Web 服 务 什么是 Microsoft.NET?.NET 是 Microsoft 用以创建和支持 Web 服务的平台, 该平台将信息、 设备和人以一种 统 一 的 、 个 性 化 的 方 式 联 系 起 来 。 Web 服务又是什么?Web 服务是使应用程序能够通过 Internet 进行通信的一种通用手段, 而不管操作系统或 编程语言是什么。因此,可以说它是.NET 的 精 髓 。 二者之间有什么关系呢?我们设想下面的一个来自 Microsoft 公司网站的经典例子: 假设某一个时刻

12、, 您不在家中, 而 希 望 打 开 家 中 的 空 调 , 提 高 居 室 的 温 度 。 此 时 您 可 以 利 用 .NET, 通 过 不 同 的 方 式 控 制 您 家的空调器。如果您在办公室,可以通过桌面计算机;如果您正在驾车途中,则可以通过智 能 移 动 电 话 。在这个例子中, 桌面计算机、 智能移动电话都称为 “智能设备” 。 它们的特征就是都可以 通过 Internet 进行数据通信,而例子中的“打开空调器” 则是一个典型的 Web 服务不同的智 能设备,都可以调用该 Web 服 务 , 显 然 , 上 述 服 务 需 要 平 台 的 支 持 , .NET 正是支持该 Web

13、 服 务 的 平 台 。 如何开发 Web 服务?显 然 , 任 何 可 以 想 到 功 能 都 可 以 成 为 Web 服 务 , Mcrosoft 推 出 了 完 整 的 开 发 工 具 , 使 用 这些工具, 可以开发出任何需要的 Web 服务 。 本书的目的就是向广大读者介绍使用这些工具 开发 Web 服 务 的 方 法 , 相 信 您 一 定 可 以 从 中 寻 找 到 无 穷 的 乐 趣 。Web 服 务 简 介Web 服务是互联网应用,特别是网上商业事务处理对软件业提出的需求。在当今社会,任何一个企业要得以生存、要有更强的竞争力,就必须与更多的商业伙伴合作,更及时地了 解商业信息

14、,更快速地进行事务处理。效率、机遇成为企业成功的重要因素。可是传统的或 已有的互联网商业事务处理模式并不能满足企业对效率和及时抓住机遇的要求。在现有条件 下,企业无法动态地去发现自己潜在的商业伙伴,也不能把自己推销给潜在的合作需求者。 即使有了合作伙伴,由于各自使用的系统和平台的差异,网上事务处理也不顺畅,常常需要 人 为 干 预 , 不 但 花 费 了 金 钱 和 时 间 , 也 丧 失 了 很 多 良 好 的 机 会 。这就给软件业提出了如何实现企业之间快速无缝交易的要求。新的商业处理模式应该独 立于系统、平台和程序语言。不同的系统应该可以顺畅地进行通信。这是一个难度极大的要 求。在过去已

15、经有很多尝试企图达到这个目标,但都因存在局限性,没有得到推广应用。要 让不同的系统和平台无缝地进行通信, 需要定义一系列标准化的规范。 如果没有 XML, 这一 切 似 乎 不 能 成 为 可 能 。 XML 的 系 统 独 立 性 和 可 扩 展 性 是 定 义 标 准 化 规 范 的 基 础 。 正 是 有 了 XML 以及 XML 相关规范(如 XML 大纲) ,才导致 了 Web 服务的诞生。 Web 服务是互联网 应 用 需 求 和 技 术 发 展 的 双 重 产 物 。使用 Web 服务, 商业企业 可以把自己提供的服务以 Web 服务的形式在 Internet 上发布 (通 过

16、UDDI 注册中心) , 需 要查询潜在合作伙伴的商业企业可以检索 UDDI 注册中心, 发现自己 需 求 的 商 业 企 业 、 服 务 , 并 与 之 进 行 交 互 。 这 一 切 都 是 在 软 件 级 发 生 并 自 动 完 成 的 。 有 了 Web 服 务 , 企 业 与 企 业 之 间 不 需 要 中 介 就 能 相 识 , 不 需 要 协 商 就 能 交 易 , 这 无 疑 会 给 企 业 的 发 展 带 来 更 多 的 机 遇 , 也 为 企 业 的 运 作 大 幅 度 提 高 效 率 。其 实 , Web 服 务 代 表 着 新 一 代 软 件 架 构 模 式 , 就 是

17、 通 过 互 联 网 架 构 应 用 软 件 , 服 务 即 软 件。一个大型软件再也不是独立于一台或几台计算机,也不是独立于互联网上定制的某些计 算机。 任何一个在互联网上提供 Web 服务的计算机都可能参与到软件的运行过程。 在一个商 业处理软件中,它可能需要得到商品价格、当时汇率和运输费用等实时信息,这些信息都可 以以 Web 服 务 的 方 式 提 供 , 它 们 都 将 参 与 到 软 件 的 运 行 中 , 成 为 软 件 不 可 分 割 的 一 部 分 。本书将致力于介绍 Web 服务开发的各个技术细节,不但力求让读者对 Web 服务有一个 全面的认识, 还努力为开发 Web 服

18、务的程序员提供最新最完整的技术参考 。 本书介绍了目前 Web 服 务 发 展 过 程 中 最 新 的 协 议 和 规 范 , 并 通 过 大 量 短 小 精 悍 的 实 例 说 明 每 个 协 议 和 规 范 的 应 用 或 实 现 方 法 。内 容 概 要本 书 可 以 大 体 分 为 三 个 部 分 :第一部分是对 Web 服 务 相 关 协 议 和 规 范 的 全 面 介 绍 , 包 括 XML、 XSD、 SOAP、 WSDL和 UDDI。在介绍的过程中,以大量的具体实例介绍这些技术的应用。 第二部分重点介绍微软为 Web 服务开发提供的支持, 包括 ASP.NET、 Visual

19、Studio .NET和 SOAP Toolkit。 这 些 工 具 支 持 Web 服 务 的 最 新 规 范 , 分 别 适 用 于 不 同 开 发 者 , 开 发 不 同 要 求的 Web 服 务 。第三部分是附录, 提供了中文版的 SOAP 1.1 协议和 WSDL 1.1 规范文档。 这两个规范是Web 服务的核心。程序员在开发 Web 服 务 的 过 程 中 , 会 不 时 参 考 这 两 个 规 范 。编者的话准 备 知 识本书介绍的技术是全新的,它涉及到的技术是广泛的。在本书中,我们会碰到很多有关 网络技术的名词, 比如 URI、 网络传输协议等, 还会碰到具体的开发操作, 比

20、如使用数据库、 配置 IIS 5.0 服务器等 , 还会使用具体的程序设计语言进行开发, 比如 C#、 VB、 VBScript 等。 虽然理解本书的内容没有必要全面掌握这些知识,但读者对这些知识懂得越多,从本书中获 得 的 收 获 也 就 越 多 。为 了 让 读 者 更 好 地 使 用 本 书 , 下 面 列 出 一 些 最 好 预 先 掌 握 的 基 本 知 识 。1 IIS 的使用IIS 是 Windows NT/2000 上安装的网络信息服务器 ( Internet Information Server) ,包括 SMTP、 HTTP 和 FTP 等服务,本书中使用的是 HTTP 服

21、务。在安装操作系统时,通常不会 自动安装 IIS 服 务 器 , 但 可 以 通 过 Windows 控 制 面 板 的 添 加 /删 除 程 序 添 加 。 安 装 了 IIS 服务 器后,就可以在浏览器中输入 http:/localhost/访 问 它 的 HTTP 服 务 了 。 IIS 通常安装在系统盘 的 Inetpub 目 录 下 , 该 目 录 下 的 wwwroot 为 HTTP 服 务 所 在 的 目 录 。 本 书 中 所 有 的 Web 服务 都 应 该 放 在 这 个 目 录 或 其 子 目 录 下 才 能 正 常 运 行 。2 C#语 言 基 础 知 识本 书 中 的

22、 绝 大 多 数 实 例 使 用 的 都 是 C#语 言 , 所 以 , 为 了 更 好 地 阅 读 本 书 , 需 要 基 本 的 C#语 言 程 序 设 计 知 识 , 不 过 这 并 不 是 必 需 的 。 如 果 您 已 经 学 过 C+或 Java, 那 这 些 C#代 码 对书中知识的理解不会产生任何障碍,甚至可以通过本书的实例,渐渐学会 C#语 言 。 不 过 , 对于那些还没有掌握过 C#或 其 他 程 序 语 言 的 读 者 来 说 , 首 先 最 好 学 习 C#语 言 , 再 来 学 习 本 书。 关于学习 C#语言, 我们向您推荐两本书, 一本是 C#语言程序设计 ,

23、该书全面地介绍 了 C#语言本身的特性, 另一本是 Visual C#.NET 开发实践 , 它是结合 Visual Studio.NET 环 境具体介绍开发方法的。这两本书均由人民邮电出版社出版。通过参考这两本书,相信您在 学 习 本 书 的 时 候 会 轻 松 很 多 。3 VB 语言基础知识Web 服务没有依赖于任何程序设计语言, 以往的 绝大多数语言都可以用来开发 Web 服务。本书在介绍如何把现有的应用程序转换成 Web 服务,以及如何使用 ASP 访问 Web 服务时, 使用了 VB 和 VBScript 语言。 同样 , 如果读者懂得其他语言 , 但没有专门学习过这两门语言, 也

24、绝不会影响对本书的学习和理解。毕竟,本书介绍的重点是使用.NET 开发 Web 服 务 。4 数 据 库 基 础 知 识虽然 Web 服务与数据库没有直接的关系,但在应用中,几乎绝大多数 Web 服务都会使 用到数据库,因此本书中有多个例子将也涉及到数据库的操作。不过本书中使用的数据库操 作都是非常基础的,包括使用 Microsoft Access 建立数据库,在控制面板 ODBC 数据源中注 册数据库,在程序中通过 API 访问数据库等。本书使用的数据库访问技术都是非常简单的, 通 常 是 连 接 数 据 库 执 行 一 条 查 询 命 令 。 书 中 涉 及 到 的 所 有 数 据 库 操

25、 作 都 可 以 在 .NET Framework SDK 的 在 线 帮 助 中 查 询 到 例 子 代 码 和 详 细 的 解 释 。3 .NET 精 髓 Web 服务原理与开发系 统 要 求只有在学习时通过实际的操作,才能加深对书中知识的理解和掌握。所以,在阅读本书 之前,首先需要准备一套安装了所需软件,运行快速稳定的系统。下面列出了系统具体的配 置 需 求 :1 最 好 有 一 台 P III 以 上 , 256MB 内 存 的 计 算 机 。 这 只 是 最 好 的 , 但 不 是 必 需 的 。 快 速 的机器可以提高学习的效率。实际上,如果计算机能运行 Windows2000 没

26、有问题就足够了。 2 安 装 Windows 2000 专 业 版 或 服 务 器 版 。 Windows 2000 相比以往的 Windows 版本具 有很多优势,比如可以使用 IIS 5.0, 可 以 顺 利 地 安 装 Visual Studio .NET 和 SQL Server 2000等 。3安装 IIS 5.0。这是提供 Web 服 务 的 服 务 器 , 是 运 行 书 中 例 子 必 需 的 。4 安 装 SQL Server 2000。 这 不 是 必 需 的 。 实 际 上 , 本 书 只 是 为 了 演 示 如 何 在 Web 服 务 中使用 SQL 数据库才需要这个软

27、件。如果读者对访问 SQL 数据库的知识已经了解或者不想 了 解 , 就 完 全 没 有 必 要 安 装 这 个 庞 大 的 数 据 库 服 务 器 。5 安 装 Visual Basic 6.0。 这 也 不 是 必 需 的 。 书 中 有 几 处 使 用 了 Visual Basic, 这 是 为 了 使用微软公司提供的 UDDI SDK 和 SOAP Toolkit。 介绍开发工具只是为了加深对原理的了解。 如果读者不想真的开发 Web 服务,就没有必要安装 Visual Basic 6.0。6 Microsoft UDDI SDK 和 SOAP Toolkit, 它 们 分 别 支 持

28、 UDDI 和 SOAP 的开发。只有 在本书的第二部分才会使用到这两个工具,因此这两个工具也不是必需的。这两个工具可以 到 微 软 公 司 的 网 站 下 载 , 另 外 , 为 了 方 便 读 者 , 这 两 个 工 具 收 录 在 本 书 的 光 盘 中 。特 别 说 明本书光盘中的实例需要使用 Visual Studio.NET Beta2 编译运行, 微软公司在 Beta2 之后发 布 的 RC1/RC2/RC3 版 本 也 可 以 正 常 编 译 。 根 据 微 软 公 司 发 布 的 信 息 , 2002 年 初 将 发 布 的 Visual Studio.NET 正式版在特征上

29、不会有改变,即仍可以正常编译运行。如果有所改变,请 访问 http:/ 我 们 将 公 布 相 应 修 改 代 码 的 方 法 。与 您 交 流Web 服 务 本 身 还 处 于 快 速 发 展 中 , 本 书 介 绍 的 技 术 也 会 不 断 更 新 , 作 者 非 常 愿 意 与 读 者 进行技术上的交流, 以期在以后的书中加入更新的技术内容。 前沿软件研究室的 E-mail 地址 是 。编 者2001.114 目 录第 1 章 Web 服务概述 11.1 什 么 是 Web 服务 11.2 为 什 么 需 要 Web 服 务 21.2.1 传统技术的缺陷 21.2.2 历史的必然 31

30、.3 Web 服 务 的 运 行 机 理 41.3.1 Web 服务的设计目的 41.3.2 Web 服务的基本结构 41.4 Web 服 务 的 技 术 架 构 81.4.1 网络层 81.4.2 XML 消息层 81.4.3 服务说明层 91.4.4 服务发布层 91.4.5 服务发现层 91.4.6 其他技术层面 91.5 Web 服 务 实 现 模 型 101.5.1 Web 服务的角色 101.5.2 Web 服务的操作 111.5.3 Web 服务的产品 111.5.4 Web 服务的开发生命周期 111.6 Web 服 务 的 应 用 领 域 121.6.1 Web 服务简单应用

31、 121.6.2 应用程序集成 131.6.3 工作流解决方案 131.6.4 不该使用的领域 131.7 Web 服 务 的 优 势 和 面 临 的 挑 战 141.7.1 Web 服务的优势 141.7.2 Web 服务面临的挑战 141.8 Web 服 务 简 单 实 例 161.8.1 实现 Web 服务 16.NET 精 髓 Web 服务原理与开发1.8.2 测试 Web 服务 171.8.3 使用 Web 服务 201.9 本 章 总 结 22第 2 章 XML 基础 232.1 什 么 是 XML232.1.1 XML 是元标记语言 232.1.2 XML 把内容与形式分离 242.2 编 写 简 单 XML 文档 252.2.1 定义基本元素 252.2.2 分解元素 252.2.3 使用属性 272.3 XML 文 档 结 构 272.3.1 XML 声明 282.3.2 处理指令 292.3.3 注释 302.3.4 字符和实体引用 312.3.5 CDATA 区 322.3.6 元素 332.3.7 属性 352.3.8 文本内容 362.4 XML 命 名 空 间

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 网络科技 > 计算机原理

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报