首页>参考读物>计算机科学与技术>数据库

Oracle 9i XML手册
作者 : (美)Ben Chang Mark Scardina Stefan Kiritzov
译者 : 陈维军 张静贤 郜竹香 等
丛书名 : Oracle技术丛书
出版日期 : 2002-03-01
ISBN : 7-111-09844-7
定价 : 48.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 364
开本 : 16开
原书名 : Oracle 9i XML Handbook
原出版社: McGraw-Hill
属性分类: 店面
包含CD :
绝版 : 已绝版
图书简介

本书介绍如何在Oracle9i平台上利用XML建立高效的、可靠的互联网应用。主要内容包括:XML介绍,Oracle9i数据库开发应用程序,利用Oracle的XML使能技术案例分析等等。并在附录中介绍了W3C XML、DOM、SAX和XSLT规范。
本书内容翔实、实例众多,是一本Oracle XML组件的用户指南。本书所附光盘包括Oracle9i产品版的Java、C、C++和PL/SQL语言的Oracle XDK及众多演示实例。

图书特色

Ben Chang在Oracle公司工作了12年,在公司里,他负责服务器技术部门中的CORE和XML开发小组的工作。除了负责Oracle6到Oracle9i版本的工作外,他还是Oracle 8.0的版本管理者,并且是拥有该职位最长时间的人,该期间发布了五个版本。他也有3年时间担任Oracle C编码标准委员会主席,在五大洲的许多会议上对XML做过介绍,他也是W3C DOM工作委员会的成员。以前Ben Chang曾在IBM(美国国际商用机器公司)、太平洋Bell公司、Bellcore公司和GE R&D通用电气公司工作过。他持有斯坦福大学的电子工程(计算机系统)理学硕士学位和伯克利学院的电子工程和计算机理学学士学位。 Mark Scardina是Oracle公司XML服务器产品的倡导者,也是CORE和XML开发小组产品经理,负责在整个Oracle产品中建立XML基础构架组件,包括XML开发者工具包。Mark是Oracle公司在W3C XSL工作组的代表。他在Socket通信和ACE技术有多年工作经验,持有旧金山大学的信息系统管理学士学位。 Stefan Kiritzov是Oracle公司的CRM技术与结构(CRM Technology &Architecture)组的开发经理,在开发系统软件方面有19年的经验。在加入Oracle以前,他曾在美国电话电报公司、NCR、SHL Systemhouse和ICT工作过。Stefan Kiritzov持有保加利亚Kliment Ohridsky大学的数学学士学位和硕士学位。

图书前言

在1999年3月,Philip Greenspun在Oracle公司总部做了一次讲座,在本次讲座中,他鼓励我们编写本书的第一版。他的讲座涉及因特网、XML、如何创建以数据库为基础的Web站点、为什么Oracle数据库在业界应用如此广泛,以及为什么Oracle开发组成员应该为Oracle出版社多编写图书。他以惯有的调侃和强调方式反复说明了最后一点。
我们把这个任务看作一个不小的挑战,接下来开始了紧张的准备工作,把我们在Oracle上关于XML所做的工作整理了一个提纲,联系Oracle出版社的Jeremy Judson表达了我们的意向,签署了必要的合同,制定了严格的时间进度表,向Philip Greenspun发邮件,请他撰写前言,最后开始了紧张有序的编写工作。我们就本书对问题范围的组织方式多次征询Philip的意见,而不是向技术部门或者管理部门。
回想2000年中期,我们一边在Oracle公司长时间工作,还一边尽力保证本书的进度,终于完成了《Oracle XML Handbook》(该书中译本《Oracle XML开发手册》已由机械工业出版社出版。—编者注)。对于那段经历,我们作者、我们的家庭以及Oracle出版社的编辑们都不会忘记!这段辛勤劳动终于收获了丰硕的果实,该书在全世界销售了成千上万本,被翻译成多种语言,并且获得2000年《XML杂志》的“Best Book”奖,其中在评奖过程中获得XML业界大约5000名读者的投票。我们向ArsDigita Foundation和America誷 Promise捐献了$2000。
再回想2001年,我们制定本书第二版的进度表,最终在第二版中把业界最新进展和Oracle9i容纳进去。我们希望读者能够从本书浅显易懂的范例中获益,并且能够学习到一些最新的Oracle XML功能。
XML万岁!
注意 本书的部分销售额会捐献给ArsDigita Foundation和America’s Promise以支持他们在提高教育方面所做的工作。他们的网址分别是http://arsdigita.org和http://www.americasp-romise.org。
本书目标
也许你阅读本书的目的是准备在真实的应用程序中使用XML。这非常好,因为XML不是一个应用程序,而是一种使能技术。为了辅助你创建XML使能应用程序,我们在合适的地方提供了许多不同的应用程序场景和特定代码范例,以及范例XML和XSL文件。你可以免费使用这些代码,并且我们希望这些代码能够引导你更有效地使用XML以显著增强自己的应用程序。
注意  如果你想对本书或者光盘部分观点发表自己的意见,或者发现其中的错误,请给我们发电子邮件:oraclexmlhandlebook@yahoo.com。
读者对象
本书的编写目的是提供Oracle XML组件的用户指南。本书不是完整的参考手册,因为所有组件API文档都有电子版,如果本书完全介绍,则篇幅会翻倍。在Oracle技术网上你可以找到参考文档。本书的读者对象是那些开始为程序开发而使用XML的程序员,或者那些对学习如何在Oracle产品中使用XML感兴趣的读者。尽管许多范例使用Java语言,但是借助于组件命令行接口和简单的XML、XSL和XSQL文件的编辑器。你能够了解和认识大多数的XML功能。
如何使用本书
在阅读本书时,你不必按照顺序从头逐章学习。本书的第1章和第2章是XML和Oracle的XML技术的介绍性材料,所以如果对这些知识已经非常熟悉,完全可以跳过去。对于那些创建Oracle9i XML使能数据库应用程序的读者来说,我们建议你仔细学习第3、7、8和9章,最好对第10章也比较重视,以便于深刻理解OTN应用程序。如果你计划使用Oracle应用程序服务器、因特网文件系统或者Oracle Text,则应该阅读第4、5、6章的内容。第10章是我们对XML未来的展望。最后,附录A讨论了部分W3C规范。附录B讨论W3C XML规范,而附录C讨论其他W3C规范。接下来是每章的概述。
第1章更新和引入了在XML业界Oracle所做的工作,解释了XML基本概念和术语、XML存在的原因,以及Oracle在业界的XML策略。该章还提供Oracle技术网及其XML链接、Oracle的XML使能产品和XML组件的概述,以及一个范例,图书销售XML使能应用程序。
第2章更新和引入了Oracle XML开发者工具箱(XDK)的组件,讨论了Java/C/C++/PLSQL XML解析器和XSLT处理器、Java/C++ XML模式处理器、Java/C++类生成器,以及Java Transviewer Beans。该章还包含访问和操作XML/XSL文件的范例代码。
第3章更新和引入了Oracle9i内置的Java虚拟机和Oracle的Java XML组件。该章着重介绍使用XDK的XSQL Servlet如何在数据库中保存XML数据,以及怎样从数据库中检索XML数据,以及图书销售XML使能应用程序的设计和实现。
第4章更新和讨论了Oracle应用程序服务器体系结构,以及到XML和XDK组件的链接。该章还讨论怎样把书店应用程序创建为应用程序Servlet。
第5章更新和引入了Oracle的下一代文件系统(iFS)。该章讨论了体系结构、iFS如何充当XML文件系统,以及iFS如何在内部使用XML以实现把文件的数据映射为关系型模式。该章还包含多个常见文件操作的Java范例代码。
第6章更新和讨论了Oracle9i的文本搜索引擎,即Oracle Text,讨论了其体系结构,以及其搜索存储XML文档的能力。该章扩展了书店应用程序,通过范例代码以创建索引和执行XML使能的搜索。
第7章是新增的,解释了基于XML的服务和事件框架,其中借助于该框架可以开发、部署、管理和执行B2B应用程序集成的基于Web的服务。该章还讨论了基于SOAP的技术,并且解释了Oracle 电子商务应用程序技术是如何使用本框架的。
第8章更新和讨论了在端对端解决方案中如何组装XML组件。该章提供了某XML使能数据库应用程序的设计,包括支持XML的Web站点和商务-客户消息系统。该章还包含了XML和XSL范例文件和范例代码。
第9章是一个新增的内容,深刻解释了怎样借助于Oracle产品和代码列表来创建功能强大的XML应用程序,即FAQ应用程序。该应用程序演示了如下技术的重要功能:XSLT处理器、XML类生成器、XSQL Servlet、XML SQL 工具、Oracle Text,以及新的XML数据类型和操作。
第10章更新和引入了Oracle技术网(OTN)的XML Web站点,以及其上的XML示范程序。该章还讨论了如何安装和运行这些示范程序,包括特定XML功能的细节,以及每个示范程序所演示的功能。
第11章更新和讨论W3C和OASIS对XML标准所做的工作,以及这些组织今后基于XML的研究方向。该章还讨论了XML及其相关技术当前在XML业界几个主要公司中的使用情况。
附录A更新和讨论了主要的XML规范。还包括对XML文档接口的两个W3C标准(即DOM和SAX)的讨论。讨论了名字空间、XPath、XSL转换的其他相关的XML技术标准。
附录B是新增的内容,从较高层次上概述了新的W3C XML模式规范,并且演示其在多个范例中的使用。
附录C在较高层次上概述了新的W3C XML查询、XML协议和SOAP规范,并且演示了其在多个范例中的使用。
术语表包含一系列XML术语,以及其在本书中的定义。
本书附带的光盘
在本书随带的光盘中,你会找到Oracle9i产品版的Java 、C、C++和PL/SQL语言的Oracle XDK,包括XML解析器、XSL处理器、TransViewer Java bean和XSQL Servlet,以及许多演示程序。从OTN站点,你可以下载更新版本的Oracle XDK。
你可以从Oracle出版社Web站点下载本书的所有源代码,地址为http://www.osborne.com/oracle。从Oracle技术网Web站点http://technet.oracle.com/tech/xml,也许可以下载最新的XML组件和Oracle9i。

作者简介

(美)Ben Chang Mark Scardina Stefan Kiritzov:暂无简介

译者简介

陈维军 张静贤 郜竹香 等:暂无简介

译者序

可扩展标记语言(Extensible Markup Language,XML)是一种元标记语言。如同在万维网协会(World Wide Wed Consortium,W3C)的XML1.0 规范中所说明的那样,XML可以让用户定义自己的标记语言,从而在XML文件中描述并封装数据。XML的独特之处在于其简单性,并且能够集成内嵌数据提供语义的用户定义的标示标记。XML起源于1986年由国际标准化组织批准的标准通用标记语言。虽然在文档世界中SGML仍然是广为使用的标准,HTML作为万维网上数以万计的Web页面的基础依然用途广泛,但XML仍迅速得到了广泛的认同。因为它与现有的标记语言相比,在数据的交换、存储、描述等方面都具有优势。自从W3C在1998年2月发布了XML1.0版以来,XML已经被广泛认为是电子商务在语言和数据交换方面的重要选择。
ARB把Oracle的XML战略归结为简洁的一句话:“向开发者提供最好的平台以使他们高效地建立和部署可靠的、可伸缩的、利用XML的互联网应用。”很重要的一点是,这个声明提出以发展为核心,而不是以某种产品为核心。从整体上来说这是具有一致性的,因为XML并不是应用,在这一点上它与其他标记语言不同。XML是一种使能技术,正因为如此,从解决方案的上下文才能看到其重要性。不仅仅是Oracle内部的开发组对XML感兴趣,合作者以及Oracle的客户群体提出了借助于XML把分离的系统整合起来的需求,其中大多数这些系统是私有的。XML及其相伴技术XSL非常适于作为提供链接这些系统的基础。
本书由Oracle XML开发组成员编写,详细阐述了Oracle的XML策略、Oracle在XML领域的最新发展以及Oracle所提供的XML使能产品。本书还包含大量与XML和Oracle XML相关的信息和链接,对于那些想借助于Oracle最新产品进行开发和研究的人,以及创建XML使能的应用程序的人而言,都是一本难得的参考书。
现在,我们很荣幸能够有机会承担本书的翻译工作。在翻译过程中,我们经常为一句话、一个术语进行反复的讨论,到处查找资料,力图使本书的翻译能正确、贴切地反映原文的意思,同时注意使句子、段落符合中国人的语言习惯。出版社编辑具有高度的职业精神,在许多方面对翻译工作进行规范,是本书翻译工作得以顺利完成的另外一个关键因素。我们真挚地希望你能够从本书中有所收获,这是作者的初衷,也是我们良好的愿望!
本书由陈维军、张静贤、郜竹香等组织翻译,万方工作室的全体同仁都参加了本书的翻译、校正和输入等工作。具体参加本书翻译、录排、校对工作的其他人员为:陈远春、周昊、龚志翔、万静、李向白、韩冰、张文革、王林、文瑶、王惠英、腾达、谢笑、陈佩、王晋强、易辉、马志宏、林建泉、潘德宏、付文涛、杨建峰、杨晓静、刘坤、胡忻、周鹏、梁晓明、邓超等。本书的出版是集体劳动的结晶,由于时间仓促,且译者经验和水平有限,译文难免有不妥之处,恳请读者批评指正!

2001年11月

图书目录

第1章 Oracle 与XML 1
1.1  XML基本概念和术语 1
1.1.1  序言 2
1.1.2  文档类型定义 3
1.1.3  文档的主体 4
1.1.4  文档对象模型API 4
1.1.5  XML简单应用程序接口API 7
1.1.6  名字空间API 11
1.1.7  解析器API 15
1.1.8  可扩展样式表语言变换API 15
1.1.9  XML模式API 15
1.2  为何使用XML 16
1.3  Oracle的XML战略 17
1.4  Oracle在XML产业中的努力 17
1.4.1  Oracle在W3C工作组
委员会中的工作 17
1.4.2  Oracle的XML开发者包 18
1.5  Oracle技术网与XML链接 19
1.6  XML使能的Oracle产品概览 22
1.6.1  提供XML API的Oracle产品 22
1.6.2  XML用于数据交换的Oracle产品 23
1.6.3  使用XML进行配置的Oracle产品 23
1.6.4  使用XML进行内容管理和发布
的Oracle产品 24
1.7  Oracle XML组件的使用概览 24
1.7.1  文档创建与发布 25
1.7.2  个性化信息发送服务 25
1.7.3  易于自定义的数据驱动应用程序 25
1.7.4  使用XML购物车的电子商务 25
1.7.5  B2B互联网消息机制 25
1.7.6  通过XML消息机制的
应用程序集成 25
1.8  实例与应用程序 25
第2章  Oracle XML核心技术 29
2.1  Java V2的XML解析器 29
2.1.1  对SAX的支持 29
2.1.2  对DOM的支持 36
2.1.3  对XSLT的支持 43
2.1.4  对XML模式的支持 47
2.2  Java类生成器 52
2.2.1  输入的DTD 52
2.2.2  处理DTD来生成Java类 53
2.2.3  从Java类创建有效的XML文档 54
2.2.4  由Java应用程序生成的XML文档 55
2.2.5  输入的XML模式 55
2.3  用Java浏览和转换XML 58
2.3.1  DOMBuilder bean 59
2.3.2  XSLTransformer bean 62
2.3.3  XMLSourceView bean 62
2.3.4  XMLTreeView bean 65
2.3.5  XMLTansformPanel bean 66
2.3.6  DBView bean 68
2.3.7  DBAccess bean 68
2.4  PL/SQL版本的XML解析器 68
2.5  C版本的XML解析器和XSLT处理器 72
2.5.1  独立的解析器和集成的
XSLT处理器 72
2.5.2  解析器/XSLT 处理器库 73
2.5.3  文档对象模型API 76
2.5.4  XML简单应用程序接口 77
2.5.5  XSLT支持 82
2.5.6  XML模式支持 83
2.5.7  XML模式处理器库 84
2.6  C++版本的XML解析器、XSLT
处理器及XML模式处理器 84
2.7  C++类生成器 85
第3章  开发Oracle9i数据库的应用 87
3.1  Oracle9i—XML使能的数据库 87
3.2  Oracle的JServer和Java XML组件 88
3.2.1  JServer基本知识 88
3.2.2  Java XML组件 89
3.2.3  发布和调用Java XML组件 91
3.3  数据库模式与XML文档 93
3.3.1  把XML文档映射到数据库模式 94
3.3.2  把数据库模式映射为虚拟XML
文档 96
3.3.3  排序和检索XML数据 98
3.4  XSQL—XSLT/SQL服务器页面 99
3.4.1  XSQL页面的体系结构 101
3.4.2  XSQL Servlet的安装 102
3.4.3  SQL查询生成的动态XML文档 102
3.4.4  在XSQL中对条件SQL命令
的支持 104
3.5  图书销售范例 105
3.5.1  设计数据库模式 105
3.5.2  使用XSQL来设计Web站点 106
第4章  Oracle应用程序服务器开发 111
4.1  Oracle应用程序服务器体系结构 112
4.1.1  HTTP监听器 113
4.1.2  OAS组件 113
4.1.3  应用程序cartridge 113
4.2  Oracle因特网应用程序服务器体系 114
4.2.1  iAS 通信服务 115
4.2.2  iAS 表示服务 116
4.2.3  iAS 商业逻辑服务 117
4.2.4  iAS数据管理服务 118
4.2.5  iAS 系统服务 118
4.3 iAS客户组件 119
4.3.1  Oracle 数据库客户开发者工具包 119
4.3.2  Oracle XML开发者工具包 119
4.3.3  Oracle LDAP客户工具包 119
4.4  作为OAS Servlet的Bookstore
应用程序 119
4.4.1  BookstoreServlet 应用 122
4.4.2  注册BookstoreServlet
应用程序和cartridge 124
4.4.3  调用BookstoreServlet应用程序 125
4.4.4  数据库访问 125
4.4.5  使用事务服务 129
4.4.6  调用OAS组件 129
4.5  作为iAS Servlet的Bookstore应用 130
4.5.1  配置Apache 130
4.5.2  配置JServ 130
第5章  Oracle因特网文件系统 131
5.1  特性 131
5.1.1  表存储 131
5.1.2  解析器 132
5.1.3  调整器 132
5.1.4  覆盖 132
5.1.5  多协议 132
5.2  优点 132
5.3  组件 133
5.4  XML 133
5.5  媒介文本/Oracle文本 134
5.6  文档模型 134
5.7  文档属性 135
5.7.1  无版本属性 135
5.7.2  标准属性 135
5.7.3  链接属性 136
5.7.4  用户属性 136
5.8  文档处理 136
5.9  定义文档类型 137
5.9.1  类型定义范例 137
5.9.2  标准类型属性 138
5.9.3  定制类型属性 139
5.9.4  属性特性 140
5.10  文件扩展 142
5.11  使用iFS 144
5.11.1  例1:创建并保存HelloWorld 144
5.11.2  例2:创建一个更好的
Hello World 145
5.11.3  例3:操作文件 145
5.11.4  例4:搜索文件 146
5.12  使用iFS操作XML文件 147
5.12.1  存储被解析的XML文件 147
5.12.2  存储未解析的XML文件 148
5.12.3  显示XML文件 148
5.13  关于XML文件的其他重要事项 149
第6章  用Oracle Text搜索XML文档 150
6.1  下一代文本搜索引擎Oracle Text 150
6.2  Oracle Text索引结构 151
6.2.1  数据存储 151
6.2.2  过滤器 152
6.2.3  分段器 152
6.2.4  词法分析器 154
6.3  使用Oracle Text 154
6.3.1  数据存储 156
6.3.2  字段和区域段 158
6.3.3  终止段 161
6.3.4  属性段 161
6.3.5  PATH_SECTION_GROUP
中的XPATH搜索 163
6.3.6  动态添加段 163
第7章  Oracle电子商务XML服务 165
7.1  XML服务综述 165
7.2  XML服务组件 165
7.2.1  管理员接口 165
7.2.2  SOAP服务器 165
7.2.3  客户机API 166
7.2.4  服务和事件库 166
7.3  术语 166
7.3.1  XML服务 166
7.3.2  Web服务 166
7.3.3  服务组 166
7.3.4  关键集成点 166
7.3.5  调用点 166
7.3.6  调用记录 167
7.3.7  事件 167
7.3.8  事件预定者 167
7.4  XML服务和SOAP 167
7.4.1  SOAP是什么 167
7.4.2  SOAP如何工作 168
7.4.3  SOAP客户机做什么 169
7.4.4  SOAP服务器做什么 169
7.5  服务组指导方针 170
7.6  服务指导方针 170
7.7  安全模型 171
7.8  服务执行细节 172
7.9  调用指导方针 172
7.10  服务调用例子 173
7.11  事件指导方针 174
7.12  发出事件信号的例子 175
7.13  给过滤的预定者发出
事件信号的例子 176
7.14  事件预定者服务 178
7.15  部署一种新的服务 178
7.16  创建认证配置 189
7.17  创建一个调用记录 190
7.18  运行范例服务 192
7.19  调用和事件API 195
7.19.1  oracle.apps.jtf.services.invocation. Client类 195
7.19.2  oracle.apps.jtf.services.invocation. Param类 197
7.19.3  oracle.apps.jtf.services.invocation. ServiceResult类 200
第8章  Oracle和XML应用 202
8.1  Oracle XML SQL Utility 202
8.1.1  检索XML格式的数据 202
8.1.2  保存XML格式的数据 204
8.1.3  用XML SQL Utility执行
更新操作 206
8.1.4  用XML SQL Utility执行
删除操作 207
8.1.5  安装XML SQL Utility 208
8.1.6  扩展XML SQL Utility 209
8.2  Oracle XSQL Servlet 210
8.2.1  XSQL页面 210
8.2.2  安装XSQL Servlet 211
8.2.3  向XSQL Servlet提交查询 212
8.2.4  用样式表来转换XSQL输出 213
8.2.5  用XSQL Servlet插入XML文档 215
8.2.6  用XSQL Servlet更新数据 216
8.3  一个支持XML的Web站点 218
8.3.1  XML使能解决方案 218
8.3.2  设计要求 218
8.3.3  体系结构 219
8.3.4  实现范例 219
8.3.5  扩展范例 221
8.3.6  Oracle Portal-to-Go 221
8.4  支持XML的电子商务通信 222
8.4.1  XML使能解决方案 222
8.4.2  设计要求 223
8.4.3  体系结构 223
8.4.4  范例实现 224
8.4.5  扩展本范例 230
8.4.6  Oracle集成服务器 230
第9章  使用Oracle的XML使能技术
的案例研究 232
9.1  XML使能的FAQ Web站点 232
9.2  应用程序需求 232
9.3  应用程序设计 233
9.4  数据库模式设计 233
9.5  生成XML模式 235
9.6  生成Java类 236
9.7  将XML文档存为XMLType 236
9.7.1  用SYS_XMLGEN
和SYS_XMLAGG生成XML 237
9.7.2  用Extract()和ExistsNode()
从XMLType中提取数据 237
9.7.3  用XMLType建立相关FAQ 237
9.8  创建Web应用程序 240
9.9  提交FAQ 241
9.10  检索FAQ 248
9.11  用HASPATH和INPATH
进行XMLType检索 250
9.12  利用函数索引提高检索性能 250
9.13  用URI-Refs直接链接到数据库内容 251
9.14  建立术语表 251
9.15  扩展应用程序 253
第10章  OTN提供的基于XML的
应用程序 255
10.1  访问XML应用程序 255
10.2  什么是XML应用程序示范 257
10.3  XML应用程序 257
10.3.1  Hello World应用程序 257
10.3.2  Employee Page应用程序 261
10.3.3  Insurance Claim应用程序 263
10.3.4  Invalid Classes应用程序 267
10.3.5  XSQL演示程序索引 268
10.3.6  Do You XML 站点 270
10.3.7  Employee/Department对象
视图应用程序 272
10.3.8  Airport Code Validation
应用程序 272
10.3.9  Airport Code Display
应用程序 278
10.3.10  Ad Hoc Query Visualization
应用程序 280
10.3.11  XML Document Demo 280
10.3.12  XML Insert Request Demo 281
10.4  安装和运行XML应用程序 285
第11章  未来趋势 289
11.1  标准团体的作用 289
11.1.1  W3C的作用 290
11.1.2  OASIS的作用 295
11.2  产业范围的XML模式 296
11.2.1  XML 模式/DTD竞技场中
的主要参与者 297
11.2.2  产业专用的DTD/XML
模式成果的一个例子 299
11.3  XML对因特网的影响 300
附录A  W3C XML、DOM、SAX和
XSLT规范 304
附录B  W3C XML模式规范 330
附录C  其他W3C规范 335
术语表 342

教学资源推荐
作者: Abraham Silberschatz;Henry F. Korth;S. Sudarshan
作者: 杨金民 荣辉桂 蒋洪波 编著
作者: Thomas M. Connolly, Carolyn E. Begg
参考读物推荐
作者: 贺春旸 著
作者: John L. Viescas;Michael J. Hernandez