书籍详情
Oracle Database 10g XML 与SQ开发指南
作者:(美)斯卡丁那(Scardina, M.), (美)常(Chang, B.), (美)王(Wang, J.)著
出版社:清华大学出版社
出版时间:2006-01-01
ISBN:9787302120230
定价:¥68.00
购买这本书可以去
内容简介
本书详细讲述了如何在Oracle Database 10g上创建和部署支持XML的电子商务应用程序。本书由Oracle XML开发小组 成员撰写,从XML标准等概念着手,内容涵盖Oracle XML Database 10g(XML DB)以及Oracle XML Database's Kit 10(XDK)的所有内容,并讲解了用于Java、C、C++和PL/SQL应用程序开发的Oracle XML技术。本书主要内容使用DOM、SAX、JAXB以及StAX访问XML使用AQ以及SOAP实现XML通信使用XML Pipeline、JSP以及XSQL简化XML的处理利用Oracle XML Developer's KIt 10g简化程序开发工作方便快捷地存储、检索和查找XML数据充分利用Oracle XML Database10g内置功能性 使用Java、C、C++和PL/SQL开发XML应用程序建立基于XML的可重用组件创建Oracle Call Inerface(OCI)XML应用程序利用Java Stored Procedure扩展Oracle XML Platform
作者简介
MarkScardina是COREandXMLDevelopmentGroup产品组的经理,致力于开发应用于整个Oracle产品线的XML基础架构组件。Scardina同时还担任OracleXML标准委员会主席,并且是W3CXSL工作组的成员。
目录
目 录
第Ⅰ部分 Oracle与XML标准
第1章 XML简介 3
1.1 XML文档 4
1.1.1 前序 5
1.1.2 主体 5
1.2 结构规范的XML文档 6
1.3 有效的XML文档 7
1.4 XML命名空间 8
1.5 XML与数据库 9
1.6 数据库模式与XML文档 10
1.7 小结 13
第2章 使用DOM、SAX、JAXB和
StAX访问XM L 15
2.1 解析和绑定XML文档 16
2.2 使用DOM访问XML 17
2.2.1 DOM API简介 19
2.2.2 DOM Level 2 21
2.2.3 DOM Level 3 24
2.2.4 Oracle DOM API在C语言中
的应用程序 26
2.3 使用SAX访问XML 26
2.3.1 SAX Level 1和Level 2 27
2.3.2 SAX API的用法 30
2.3.3 C语言版本的Oracle SAX API 35
2.4 使用Java绑定访问XML 39
2.4.1 输入的XML模式 40
2.4.2 生成XML类 40
2.4.3 绑定至XML实例 40
2.4.4 使用Java应用程序创建XML
文档 42
2.5 使用StAX访问XML 42
2.6 最佳实践 44
2.6.1 DTD高速缓存 44
2.6.2 忽略标记 44
2.6.3 文档间的剪切与粘贴 45
第3章 使用XSLT和XPath转换XM L 47
3.1 XSLT处理器的编程序调用 48
3.2 使用XPath导航XML 51
3.3 XSLT样式表简介 52
3.4 XSL模板 52
3.5 XSLT处理模型 53
3.5.1 53
3.5.2 53
3.6 XSLT 2.0简介 53
3.6.1 分组 54
3.6.2 函数定义 54
3.6.3 多结果文档 55
3.6.4 临时树 55
3.7 Oracle XSLT扩展 56
3.8 XSLT虚拟机 56
3.9 XSLT与数据库 57
3.10 最佳实践 57
3.10.1 XSLT的优化技巧 58
3.10.2 XSLT中的document()函数 58
3.10.3 用于多转换的XSLT的总体
性能 58
第4章 使用DTD和XML Schema
验证XML 59
4.1 DTD简介 59
4.2 对照DTD验证XML 61
4.3 XML模式语言简介 62
4.4 基本数据类型和复杂数据类型 63
4.5 使用XML模式(XSD)验证XML 68
4.6 XML文档模型与数据库 69
4.6.1 映射DTD至数据库模式 69
4.6.2 映射XML文档至数据库模式 70
4.6.3 支持的数据库映射 71
4.7 最佳实践 72
4.7.1 设计自己的模式 73
4.7.2 元素与属性 73
4.7.3 元素和属性名称的设计 73
4.7.4 加载来自JAR文件的外部DTD 74
第5章 使用XQuery的XML操作 75
5.1 XQuery简介 75
5.1.1 基础 76
5.1.2 表达式 76
5.1.3 查询前序 78
5.1.4 XQueryX简介 79
5.2 Oracle XQuery引擎 80
5.2.1 环境设置 80
5.2.2 安装测试 81
5.3 查询XML文档 82
5.3.1 在交互模式下运行 82
5.3.2 由命令行方式查询XML 82
5.3.3 使用XQueryX查询XML 82
5.4 XQuery与Oracle数据库 83
5.4.1 Java语言的XQuery API 83
5.4.2 查询数据库中的XML 83
5.5 最佳实践 84
5.5.1 XQuery与XSLT 2.0 84
5.5.2 XQuery与SQL/SQL 85
第6章 使用SOAP的XML消息处理
机制和RPC 87
6.1 SOAP简介 87
6.1.1 文本的和编码的SOAP消息 88
6.1.2 单向和双向SOAP消息和RPC 89
6.2 SOAP和Oracle XDK的应用 90
6.2.1 SOAP客户端 90
6.2.2 SOAP服务器 90
6.2.3 SOAP处理程序 91
6.3 SOAP和Oracle数据库的应用 91
6.3.1 Oracle Streams AQ支持 91
6.3.2 AQ Servlet 92
6.3.3 消息进队与出队 92
6.3.4 通过PL/SQL使用SOAP 94
6.4 最佳实践 94
6.4.1 SOAP与JAX-RPC 95
6.4.2 SOAP与JMS 95
第7章 借助XML管道、JSP和XSQL
整合各种技术 97
7.1 XML Pipeline Processor简介 98
7.2 使用JSP和XML Bean处理
XML 100
7.2.1 DOMBuilder Bean 100
7.2.2 XSLTransformer Bean 102
7.2.3 DBAccess Bean 103
7.2.4 XMLDBAccess Bean 104
7.2.5 XMLDiff bean 105
7.2.6 XMLCompress Bean 105
7.2.7 XSDValidator Bean 105
7.2.8 XML Bean在JSP中的用法 106
7.3 XSQL页面发布框架简介 106
7.3.1 XSQL页面 107
7.3.2 XSQL Servlet安装 108
7.3.3 向XSQL Servlet提交查询 108
7.3.4 使用样式表转换XSQL结果 109
7.3.5 使用XSQL Servlet插入XML
文档 111
7.3.6 使用XSQL Servlet更新数据 113
7.3.7 JSP和XSQL页面的用法 114
7.4 最佳实践 115
7.4.1 创建更安全的连接 115
7.4.2 简单的JSP XML解决方案 115
第Ⅱ部分 数据库管理员对于
Oracle XML的管理
第8章 Oracle XML数据库 119
8.1 Oracle数据库支持XML的简史 120
8.2 设置Oracle XML数据库 122
8.2.1 安装Oracle XML数据库 122
8.2.2 安装示例数据库模式 126
8.2.3 创建用户运行XMLType示例 126
8.2.4 设置WebDAV文件夹 127
8.3 Oracle XML数据库 128
8.3.1 XMLType 129
8.3.2 XMLType视图 133
8.3.3 SQL/XML处理 133
8.3.4 Oracle XML DB储存库 134
8.3.5 Oracle Text 134
8.3.6 Oracle高级队列技术 135
8.4 XML数据库及标准 135
8.5 设计XML数据库 136
8.5.1 存储XML数据的方法 137
8.5.2 检索及生成XML 141
8.5.3 搜索XML数据的方法 141
8.5.4 为Web应用程序设计XML
数据库的方法 141
8.5.5 为信息处理程序设计XML
数据库的方法 142
8.6 小结 142
第9章 存储XML数据 143
9.1 在CLOB XMLType中存储
XML文档 143
9.1.1 更新及查询CLOB XMLType 144
9.1.2 为CLOB XMLType处理字符
代码 144
9.2 在基于XML模式的XMLType
中存储XML文档 145
9.2.1 XML模式注册 145
9.2.2 XML模式注释 150
9.2.3 XML数据加载 153
9.2.4 XML模式验证 155
9.2.5 Oracle XML DB储存库 157
9.3 在关系表中存储XML文档 160
9.3.1 XML SQL实用程序 160
9.3.2 TransX实用程序 165
9.3.3 DBMS_XMLSTORE 165
9.4 使用外部表 167
9.5 模式演进 168
9.6 最佳实践 168
9.6.1 处理文档类型定义 168
9.6.2 创建XML基于模式的
XMLType 168
9.6.3 指定命名空间 169
9.7 小结 170
第10章 生成及检索XML 171
10.1 利用SQL XML函数根据SQL
数据生成XML 172
10.1.1 XMLELEMENT()和
XMLATTRIBUTES() 173
10.1.2 SYS_XMLGEN() 174
10.1.3 XMLFOREST() 174
10.1.4 XMLSEQUENCE() 176
10.1.5 XMLCONCAT() 177
10.1.6 XMLAGG() 177
10.1.7 SYS_XMLAGG() 177
10.1.8 XMLCOLATTVAL() 178
10.1.9 UPDATEXML() 178
10.2 使用DBM XMLGEN根据SQL
数据生成XML 179
10.2.1 规范映射 180
10.2.2 打印格式 181
10.2.3 数据取出 182
10.2.4 使用REF游标 183
10.2.5 使用捆绑变量 184
10.2.6 处理特殊字符 185
10.3 使用XMLType和SQL/XML
函数进行检索 185
10.3.1 extract()和existsNode() 187
10.3.2 EXTRACTVALUE() 187
10.4 生成XML模式 188
10.5 创建XMLType视图 190
10.6 处理XML 191
10.6.1 处理XML片断 191
10.6.2 DOM编辑 192
10.7 最佳实践 195
10.8 小结 196
第11章 搜索XML数据 197
11.1 基于XPath的搜索 197
11.1.1 使用XPath搜索XML文档 198
11.1.2 基于XPath的搜索的工作
方式 201
11.1.3 使用索引优化基于XPath
的查询 204
11.2 全文搜索 207
11.2.1 使用Oracle Text搜索XML 208
11.2.2 Oracle Text搜索的工作方式 211
11.2.3 优化Oracle Text搜索 212
11.2.4 高级文本搜索 213
11.3 最佳实践 215
11.3.1 使用基于XPatH的搜索的
时机 215
11.3.2 使用Oracle Text搜索的时机 215
11.3.3 使用Oracle Text分区索引
的时机 215
11.4 总结 216
第12章 管理Oracle XML数据库 217
12.1 安装Oracle XML DB组件 217
12.2 配置Oracle XML DB 220
12.2.1 理解xdbconfig.xml 220
12.2.2 配置xdbconfig.xml 220
12.3 安全管理 223
12.3.1 保护Oracle XML DB
Repository中的数据 223
12.3.2 保护DBUri操作的安全 225
12.4 小结 226
第Ⅲ部分 针对Java程序员
的Oracle XML
第13章 Oracle XML与Java 229
13.1 Oracle XDK Java库 229
13.1.1 xmlparserv2.jar 230
13.1.2 xml.jar 230
13.1.3 xschema.jar 230
13.1.4 oraclexsql.jar和
xsqlserializers.jar 230
13.1.5 xmlcomp.jar、xmlcomp2.jar、
xmldemo.jar和jdev-rt.zip 230
13.1.6 xsu12.jar 230
13.1.7 classgen.jar 230
13.1.8 xdb.jar 231
13.1.9 xmlmesg.jar 231
13.1.10 transx.zip 231
13.1.11 orai18n.jar 231
13.1.12 classes12.jar和ojdbc14.jar 231
13.2 JDK环境 232
13.3 使用Oracle JDeveloper的XDK 233
13.3.1 建立XDK环境 233
13.3.2 建立数据库连接 234
13.3.3 建立XDK组件面板 236
13.4 小结 238
第14章 构建XML驱动的网站 239
14.1 支持XML的FAQ网站 239
14.2 设计框架 240
14.3 建立FAQ数据库 240
14.3.1 设计FAQ模式 240
14.3.2 创建数据库用户 243
14.3.3 注册FAQ模式 243
14.3.4 加载FAQ 244
14.4 将FAQ网站连接到XML
数据库 245
14.4.1 建立XSQL主页 245
14.4.2 生成FAQ列表 246
14.4.3 过滤FAQ列表 247
14.5 为FAQ列表增加分页功能 248
14.6 显示FAQ和答案 250
14.7 创建词汇表 253
14.7.1 创建词汇表模式 253
14.7.2 加载词汇表 253
14.7.3 词汇表链接 254
14.7.4 显示词汇表定义 256
14.8 搜索FAQ 256
14.9 小结 257
第15章 用XML和Web Services 构建
门户站点 259
15.1 设计框架 259
15.2 设计静态和动态区域 262
15.2.1 创建动态区域 262
15.2.2 创建静态区域 268
15.3 增加门户功能 269
15.3.1 创建用户模板 269
15.3.2 创建登录区 270
15.3.3 创建用户申请表单 272
15.4 创建管理页面 274
15.5 小结 277
第16章 用SOAP和AQ开发XML
网关应用程序 279
16.1 框架设计 279
16.1.1 传统方案 280
16.1.2 基于流的单步方案 280
16.1.3 与Internet的接口 281
16.2 框架创建 282
16.2.1 创建数据库模式 282
16.2.2 创建XML定单 285
16.3 创建XML消息处理网关 288
16.3.1 创建消息处理模式 288
16.3.2 创建AQ代理和队列 290
16.3.3 创建AQ PO处理程序 292
16.3.4 扩展框架 296
16.4 扩展应用程序的功能 304
16.4.1 提交SOAP消息 304
16.4.2 PO中xsi:type的处理 304
16.4.3 生成电子邮件确认 304
16.5 小结 305
第17章 开发XML可重用组件 307
17.1 结构设计 307
17.2 简单管道示例 308
17.2.1 SAX分析和打印 309
17.2.2 分析、检查差异 311
17.3 建立管道应用程序 315
17.3.1 XSDSchemaBuilder进程 316
17.3.2 XSDValProcess进程 316
17.3.3 XSDConditionalValProcess
进程 320
17.4 运行管道应用程序 322
17.4.1 处理无效文档 322
17.4.2 处理对远端模式有效的文档 323
17.4.3 用一致的本地和远端XSD
处理无效XML文档 323
17.4.4 处理两种模式都改变的
无效文档 323
17.5 小结 324
第Ⅳ部分 针对C程序员
的Oracle XML
第18章 Oracle XML与C语言 327
18.1 Oracle XDK C库 327
18.1.1 libxml10.a、libxml10.so和
oraxml10.dll 327
18.1.2 libcore10.a、libcoresh10.so
和libcore10.dll 328
18.1.3 libnls10.a和oranls10.dll 328
18.1.4 libunls10.a和oraunls10.dll 328
18.2 建立自己的XML开发环境 328
18.2.1 XDK C组件的UNIX设置 328
18.2.2 检验C运行时环境 329
18.2.3 设置C编译时环境 330
18.2.4 XDK C组件的Windows
设置 331
18.2.5 检验C运行时环境 332
18.2.6 设置C编译时环境 332
18.2.7 确认C编译时环境 332
18.2.8 设置Microsoft Visual C/C++ 333
18.3 小结 334
第19章 构建管理XML的应用程序 335
19.1 设计应用程序框架 335
19.2 XML媒体文件 336
19.3 创建XML配置文件 338
19.3.1 定义XSLT样式单 338
19.3.2 定义配置文件 340
19.4 创建XSL样式单 342
19.5 创建publishcat应用程序 344
19.6 小结 350
第20章 构建XML数据库OCI应用
程序 351
20.1 设计框架 352
20.2 建立OCI应用程序环境 352
20.2.1 OCI XML应用程序头文件 352
20.2.2 OCI XML应用程序库 353
20.2.3 OCI XML应用程序的
make文件 354
20.3 Update应用程序 354
20.4 初始化OCI 应用程序 355
20.5 通过OCI检索记录列表的DOM 358
20.6 执行统一的DOM操作 363
20.7 运行xmlupdate应用程序 364
20.8 小结 365
第21章 创建配置了XML的高性能
转换引擎 367
21.1 设计框架 367
21.2 使用xslcompile编译样式单 368
21.3 使用xsbtransform运行XSLT
虚拟机 371
21.4 小结 374
第Ⅴ部分 针对C++程序员
的Oracle XML
第22章 Oracle XML与C++ 377
22.1 Oracle XDK C++库 377
22.1.1 libxml10.a、libxml10.so和
libxml10.dll 377
22.1.2 libcore10.a、libcoresh10.so
和libcore10.dll 378
22.1.3 libnls10.a和oranls10.dll 378
22.1.4 libunls10.a和oraunls10.dll 378
22.2 设置自己的C++ XML开发环境 378
22.2.1 XDK C++组件的UNIX设置 379
22.2.2 检验C运行时环境 379
22.2.3 XDK C组件的Windows设置 381
22.2.4 检验C++运行时环境 382
22.2.5 设置C++编译时环境 383
22.2.6 设置Microsoft Visual C/C++ 383
22.3 小结 385
第23章 构建XML数据库OCI C++
应用程序 387
23.1 设计框架 388
23.2 设置C++ OCI XML应用环境 388
23.2.1 OCI XML应用程序头文件 389
23.2.2 OCI和C++ XML应用程序库 390
23.3 创建C++ OCI帮助类 391
23.4 初始化C++数据库XML
应用程序 392
23.5 处理OCI错误 392
23.6 连接到数据库 393
23.7 断开数据库并进行清除 395
23.8 创建C++查询应用程序 396
23.9 选择到一个XMLType 397
23.10 针对XMLType XOB访问
初始化XDK 399
23.11 使用C++ XDK API查询
XMLType 400
23.12 运行应用程序 402
23.13 小结 403
第24章 构建XML数据检索应用程序 405
24.1 设计框架 406
24.2 构建cppextract应用程序 406
24.2.1 创建通用函数 406
24.2.2 使用cppextractForce实例化
通用函数 411
24.2.3 使用cppextractMain创建
Main程序 412
24.3 运行cppextract应用程序 412
24.3.1 在Extract模式下运行
cppextract 412
24.3.2 在Splitter模式下运行
cppextract 413
24.4 扩展框架 413
24.4.1 cppextract的XML文档
删除案例 413
24.4.2 cppextract的内容管理案例 414
24.5 小结 414
第Ⅵ部分 针对PL/SQL程序员
的Oracle XML
第25章 由Oracle XML和PL/SQL
开始 417
25.1 设置环境 417
25.2 PL/SQL XML处理技术 418
25.2.1 解析XML 418
25.2.2 使用DOM处理XML 425
25.2.3 使用XSLT处理XML 428
25.2.3 设置Oracle JVM 430
25.3 小结 431第26章 构建PL/SQL Web服务 433
26.1 构建和发布第一个数据库
Web服务 433
26.1.1 建立数据库方案 434
26.1.2 使用Oracle JDeveloper 10g
发布PL/SQL Web服务 436
26.1.3 从客户端调用Web服务 439
26.1.4 调试Web服务 441
26.2 在Oracle Database中实现
Web服务 442
26.2.1 构造SOAP消息 442
26.2.2 使用UTL_HTTP发送
SOAP消息 443
26.3 扩展应用 446
26.3.1 何时构建数据库服务器
中的Web服务 446
26.3.2 建立安全防护 447
26.3.3 构建不同类型的Web服务 447
26.4 小结 448
第27章 使用Java扩展PL/SQL XML
功能 449
27.1 创建Java存储过程处理XML 449
27.1.1 实现Java代码 450
27.1.2 将Java代码应用到
Oracle JVM 451
27.1.3 创建PL/SQL规范 451
27.2 运行Java存储过程 451
27.3 使用Oracle JDeveloper 10g
简化Java存储过程的部署 452
27.4 在Oracle JVM中处理XML 454
27.4.1 解析URL引用 454
27.4.2 SAX XML处理 457
27.5 开发定制的Java存储过程 461
27.5.1 使用Java存储过程的场合 461
27.5.2 如何调试Java存储过程 462
27.6 小结 463
第28章 技术综合 465
28.1 Oracle XML平台 465
28.2 XML处理层决策 466
28.3 针对XML的数据库设计决策 467
28.3.1 XMLType CLOB 468
28.3.2 XMLType视图 468
28.3.3 存储在Oracle XML DB仓库
中的XML 469
28.4 Java、C、C++和PL/SQL决策 469
28.5 扩展Oracle XML平台 471
附录A XML标准社团与XML开放规范 473
A.1 W3C规范简介 473
A.1.1 W3C XML规范 474
A.1.2 W3C DOM规范 474
A.1.3 SAX规范 475
A.1.4 W3C命名空间规范 475
A.1.5 W3C XML Schema规范 475
A.1.6 W3C XML Query规范 475
A.1.7 W3C XSLT和XPath规范 476
A.1.8 W3C XML Pipeline Definition
Language规范 476
A.1.9 W3C XML Protocol 476
A.2 Java社区过程规范 477
A.2.1 SUN JAXB规范 477
A.2.2 Sun JAXP规范 477
A.2.3 Sun StAX规范 477
A.3 ISO SQL/XML规范 477
A.4 Oracle技术资源 477
A.5 其他有用资源 478
术语表 479
第Ⅰ部分 Oracle与XML标准
第1章 XML简介 3
1.1 XML文档 4
1.1.1 前序 5
1.1.2 主体 5
1.2 结构规范的XML文档 6
1.3 有效的XML文档 7
1.4 XML命名空间 8
1.5 XML与数据库 9
1.6 数据库模式与XML文档 10
1.7 小结 13
第2章 使用DOM、SAX、JAXB和
StAX访问XM L 15
2.1 解析和绑定XML文档 16
2.2 使用DOM访问XML 17
2.2.1 DOM API简介 19
2.2.2 DOM Level 2 21
2.2.3 DOM Level 3 24
2.2.4 Oracle DOM API在C语言中
的应用程序 26
2.3 使用SAX访问XML 26
2.3.1 SAX Level 1和Level 2 27
2.3.2 SAX API的用法 30
2.3.3 C语言版本的Oracle SAX API 35
2.4 使用Java绑定访问XML 39
2.4.1 输入的XML模式 40
2.4.2 生成XML类 40
2.4.3 绑定至XML实例 40
2.4.4 使用Java应用程序创建XML
文档 42
2.5 使用StAX访问XML 42
2.6 最佳实践 44
2.6.1 DTD高速缓存 44
2.6.2 忽略标记 44
2.6.3 文档间的剪切与粘贴 45
第3章 使用XSLT和XPath转换XM L 47
3.1 XSLT处理器的编程序调用 48
3.2 使用XPath导航XML 51
3.3 XSLT样式表简介 52
3.4 XSL模板 52
3.5 XSLT处理模型 53
3.5.1 53
3.5.2 53
3.6 XSLT 2.0简介 53
3.6.1 分组 54
3.6.2 函数定义 54
3.6.3 多结果文档 55
3.6.4 临时树 55
3.7 Oracle XSLT扩展 56
3.8 XSLT虚拟机 56
3.9 XSLT与数据库 57
3.10 最佳实践 57
3.10.1 XSLT的优化技巧 58
3.10.2 XSLT中的document()函数 58
3.10.3 用于多转换的XSLT的总体
性能 58
第4章 使用DTD和XML Schema
验证XML 59
4.1 DTD简介 59
4.2 对照DTD验证XML 61
4.3 XML模式语言简介 62
4.4 基本数据类型和复杂数据类型 63
4.5 使用XML模式(XSD)验证XML 68
4.6 XML文档模型与数据库 69
4.6.1 映射DTD至数据库模式 69
4.6.2 映射XML文档至数据库模式 70
4.6.3 支持的数据库映射 71
4.7 最佳实践 72
4.7.1 设计自己的模式 73
4.7.2 元素与属性 73
4.7.3 元素和属性名称的设计 73
4.7.4 加载来自JAR文件的外部DTD 74
第5章 使用XQuery的XML操作 75
5.1 XQuery简介 75
5.1.1 基础 76
5.1.2 表达式 76
5.1.3 查询前序 78
5.1.4 XQueryX简介 79
5.2 Oracle XQuery引擎 80
5.2.1 环境设置 80
5.2.2 安装测试 81
5.3 查询XML文档 82
5.3.1 在交互模式下运行 82
5.3.2 由命令行方式查询XML 82
5.3.3 使用XQueryX查询XML 82
5.4 XQuery与Oracle数据库 83
5.4.1 Java语言的XQuery API 83
5.4.2 查询数据库中的XML 83
5.5 最佳实践 84
5.5.1 XQuery与XSLT 2.0 84
5.5.2 XQuery与SQL/SQL 85
第6章 使用SOAP的XML消息处理
机制和RPC 87
6.1 SOAP简介 87
6.1.1 文本的和编码的SOAP消息 88
6.1.2 单向和双向SOAP消息和RPC 89
6.2 SOAP和Oracle XDK的应用 90
6.2.1 SOAP客户端 90
6.2.2 SOAP服务器 90
6.2.3 SOAP处理程序 91
6.3 SOAP和Oracle数据库的应用 91
6.3.1 Oracle Streams AQ支持 91
6.3.2 AQ Servlet 92
6.3.3 消息进队与出队 92
6.3.4 通过PL/SQL使用SOAP 94
6.4 最佳实践 94
6.4.1 SOAP与JAX-RPC 95
6.4.2 SOAP与JMS 95
第7章 借助XML管道、JSP和XSQL
整合各种技术 97
7.1 XML Pipeline Processor简介 98
7.2 使用JSP和XML Bean处理
XML 100
7.2.1 DOMBuilder Bean 100
7.2.2 XSLTransformer Bean 102
7.2.3 DBAccess Bean 103
7.2.4 XMLDBAccess Bean 104
7.2.5 XMLDiff bean 105
7.2.6 XMLCompress Bean 105
7.2.7 XSDValidator Bean 105
7.2.8 XML Bean在JSP中的用法 106
7.3 XSQL页面发布框架简介 106
7.3.1 XSQL页面 107
7.3.2 XSQL Servlet安装 108
7.3.3 向XSQL Servlet提交查询 108
7.3.4 使用样式表转换XSQL结果 109
7.3.5 使用XSQL Servlet插入XML
文档 111
7.3.6 使用XSQL Servlet更新数据 113
7.3.7 JSP和XSQL页面的用法 114
7.4 最佳实践 115
7.4.1 创建更安全的连接 115
7.4.2 简单的JSP XML解决方案 115
第Ⅱ部分 数据库管理员对于
Oracle XML的管理
第8章 Oracle XML数据库 119
8.1 Oracle数据库支持XML的简史 120
8.2 设置Oracle XML数据库 122
8.2.1 安装Oracle XML数据库 122
8.2.2 安装示例数据库模式 126
8.2.3 创建用户运行XMLType示例 126
8.2.4 设置WebDAV文件夹 127
8.3 Oracle XML数据库 128
8.3.1 XMLType 129
8.3.2 XMLType视图 133
8.3.3 SQL/XML处理 133
8.3.4 Oracle XML DB储存库 134
8.3.5 Oracle Text 134
8.3.6 Oracle高级队列技术 135
8.4 XML数据库及标准 135
8.5 设计XML数据库 136
8.5.1 存储XML数据的方法 137
8.5.2 检索及生成XML 141
8.5.3 搜索XML数据的方法 141
8.5.4 为Web应用程序设计XML
数据库的方法 141
8.5.5 为信息处理程序设计XML
数据库的方法 142
8.6 小结 142
第9章 存储XML数据 143
9.1 在CLOB XMLType中存储
XML文档 143
9.1.1 更新及查询CLOB XMLType 144
9.1.2 为CLOB XMLType处理字符
代码 144
9.2 在基于XML模式的XMLType
中存储XML文档 145
9.2.1 XML模式注册 145
9.2.2 XML模式注释 150
9.2.3 XML数据加载 153
9.2.4 XML模式验证 155
9.2.5 Oracle XML DB储存库 157
9.3 在关系表中存储XML文档 160
9.3.1 XML SQL实用程序 160
9.3.2 TransX实用程序 165
9.3.3 DBMS_XMLSTORE 165
9.4 使用外部表 167
9.5 模式演进 168
9.6 最佳实践 168
9.6.1 处理文档类型定义 168
9.6.2 创建XML基于模式的
XMLType 168
9.6.3 指定命名空间 169
9.7 小结 170
第10章 生成及检索XML 171
10.1 利用SQL XML函数根据SQL
数据生成XML 172
10.1.1 XMLELEMENT()和
XMLATTRIBUTES() 173
10.1.2 SYS_XMLGEN() 174
10.1.3 XMLFOREST() 174
10.1.4 XMLSEQUENCE() 176
10.1.5 XMLCONCAT() 177
10.1.6 XMLAGG() 177
10.1.7 SYS_XMLAGG() 177
10.1.8 XMLCOLATTVAL() 178
10.1.9 UPDATEXML() 178
10.2 使用DBM XMLGEN根据SQL
数据生成XML 179
10.2.1 规范映射 180
10.2.2 打印格式 181
10.2.3 数据取出 182
10.2.4 使用REF游标 183
10.2.5 使用捆绑变量 184
10.2.6 处理特殊字符 185
10.3 使用XMLType和SQL/XML
函数进行检索 185
10.3.1 extract()和existsNode() 187
10.3.2 EXTRACTVALUE() 187
10.4 生成XML模式 188
10.5 创建XMLType视图 190
10.6 处理XML 191
10.6.1 处理XML片断 191
10.6.2 DOM编辑 192
10.7 最佳实践 195
10.8 小结 196
第11章 搜索XML数据 197
11.1 基于XPath的搜索 197
11.1.1 使用XPath搜索XML文档 198
11.1.2 基于XPath的搜索的工作
方式 201
11.1.3 使用索引优化基于XPath
的查询 204
11.2 全文搜索 207
11.2.1 使用Oracle Text搜索XML 208
11.2.2 Oracle Text搜索的工作方式 211
11.2.3 优化Oracle Text搜索 212
11.2.4 高级文本搜索 213
11.3 最佳实践 215
11.3.1 使用基于XPatH的搜索的
时机 215
11.3.2 使用Oracle Text搜索的时机 215
11.3.3 使用Oracle Text分区索引
的时机 215
11.4 总结 216
第12章 管理Oracle XML数据库 217
12.1 安装Oracle XML DB组件 217
12.2 配置Oracle XML DB 220
12.2.1 理解xdbconfig.xml 220
12.2.2 配置xdbconfig.xml 220
12.3 安全管理 223
12.3.1 保护Oracle XML DB
Repository中的数据 223
12.3.2 保护DBUri操作的安全 225
12.4 小结 226
第Ⅲ部分 针对Java程序员
的Oracle XML
第13章 Oracle XML与Java 229
13.1 Oracle XDK Java库 229
13.1.1 xmlparserv2.jar 230
13.1.2 xml.jar 230
13.1.3 xschema.jar 230
13.1.4 oraclexsql.jar和
xsqlserializers.jar 230
13.1.5 xmlcomp.jar、xmlcomp2.jar、
xmldemo.jar和jdev-rt.zip 230
13.1.6 xsu12.jar 230
13.1.7 classgen.jar 230
13.1.8 xdb.jar 231
13.1.9 xmlmesg.jar 231
13.1.10 transx.zip 231
13.1.11 orai18n.jar 231
13.1.12 classes12.jar和ojdbc14.jar 231
13.2 JDK环境 232
13.3 使用Oracle JDeveloper的XDK 233
13.3.1 建立XDK环境 233
13.3.2 建立数据库连接 234
13.3.3 建立XDK组件面板 236
13.4 小结 238
第14章 构建XML驱动的网站 239
14.1 支持XML的FAQ网站 239
14.2 设计框架 240
14.3 建立FAQ数据库 240
14.3.1 设计FAQ模式 240
14.3.2 创建数据库用户 243
14.3.3 注册FAQ模式 243
14.3.4 加载FAQ 244
14.4 将FAQ网站连接到XML
数据库 245
14.4.1 建立XSQL主页 245
14.4.2 生成FAQ列表 246
14.4.3 过滤FAQ列表 247
14.5 为FAQ列表增加分页功能 248
14.6 显示FAQ和答案 250
14.7 创建词汇表 253
14.7.1 创建词汇表模式 253
14.7.2 加载词汇表 253
14.7.3 词汇表链接 254
14.7.4 显示词汇表定义 256
14.8 搜索FAQ 256
14.9 小结 257
第15章 用XML和Web Services 构建
门户站点 259
15.1 设计框架 259
15.2 设计静态和动态区域 262
15.2.1 创建动态区域 262
15.2.2 创建静态区域 268
15.3 增加门户功能 269
15.3.1 创建用户模板 269
15.3.2 创建登录区 270
15.3.3 创建用户申请表单 272
15.4 创建管理页面 274
15.5 小结 277
第16章 用SOAP和AQ开发XML
网关应用程序 279
16.1 框架设计 279
16.1.1 传统方案 280
16.1.2 基于流的单步方案 280
16.1.3 与Internet的接口 281
16.2 框架创建 282
16.2.1 创建数据库模式 282
16.2.2 创建XML定单 285
16.3 创建XML消息处理网关 288
16.3.1 创建消息处理模式 288
16.3.2 创建AQ代理和队列 290
16.3.3 创建AQ PO处理程序 292
16.3.4 扩展框架 296
16.4 扩展应用程序的功能 304
16.4.1 提交SOAP消息 304
16.4.2 PO中xsi:type的处理 304
16.4.3 生成电子邮件确认 304
16.5 小结 305
第17章 开发XML可重用组件 307
17.1 结构设计 307
17.2 简单管道示例 308
17.2.1 SAX分析和打印 309
17.2.2 分析、检查差异 311
17.3 建立管道应用程序 315
17.3.1 XSDSchemaBuilder进程 316
17.3.2 XSDValProcess进程 316
17.3.3 XSDConditionalValProcess
进程 320
17.4 运行管道应用程序 322
17.4.1 处理无效文档 322
17.4.2 处理对远端模式有效的文档 323
17.4.3 用一致的本地和远端XSD
处理无效XML文档 323
17.4.4 处理两种模式都改变的
无效文档 323
17.5 小结 324
第Ⅳ部分 针对C程序员
的Oracle XML
第18章 Oracle XML与C语言 327
18.1 Oracle XDK C库 327
18.1.1 libxml10.a、libxml10.so和
oraxml10.dll 327
18.1.2 libcore10.a、libcoresh10.so
和libcore10.dll 328
18.1.3 libnls10.a和oranls10.dll 328
18.1.4 libunls10.a和oraunls10.dll 328
18.2 建立自己的XML开发环境 328
18.2.1 XDK C组件的UNIX设置 328
18.2.2 检验C运行时环境 329
18.2.3 设置C编译时环境 330
18.2.4 XDK C组件的Windows
设置 331
18.2.5 检验C运行时环境 332
18.2.6 设置C编译时环境 332
18.2.7 确认C编译时环境 332
18.2.8 设置Microsoft Visual C/C++ 333
18.3 小结 334
第19章 构建管理XML的应用程序 335
19.1 设计应用程序框架 335
19.2 XML媒体文件 336
19.3 创建XML配置文件 338
19.3.1 定义XSLT样式单 338
19.3.2 定义配置文件 340
19.4 创建XSL样式单 342
19.5 创建publishcat应用程序 344
19.6 小结 350
第20章 构建XML数据库OCI应用
程序 351
20.1 设计框架 352
20.2 建立OCI应用程序环境 352
20.2.1 OCI XML应用程序头文件 352
20.2.2 OCI XML应用程序库 353
20.2.3 OCI XML应用程序的
make文件 354
20.3 Update应用程序 354
20.4 初始化OCI 应用程序 355
20.5 通过OCI检索记录列表的DOM 358
20.6 执行统一的DOM操作 363
20.7 运行xmlupdate应用程序 364
20.8 小结 365
第21章 创建配置了XML的高性能
转换引擎 367
21.1 设计框架 367
21.2 使用xslcompile编译样式单 368
21.3 使用xsbtransform运行XSLT
虚拟机 371
21.4 小结 374
第Ⅴ部分 针对C++程序员
的Oracle XML
第22章 Oracle XML与C++ 377
22.1 Oracle XDK C++库 377
22.1.1 libxml10.a、libxml10.so和
libxml10.dll 377
22.1.2 libcore10.a、libcoresh10.so
和libcore10.dll 378
22.1.3 libnls10.a和oranls10.dll 378
22.1.4 libunls10.a和oraunls10.dll 378
22.2 设置自己的C++ XML开发环境 378
22.2.1 XDK C++组件的UNIX设置 379
22.2.2 检验C运行时环境 379
22.2.3 XDK C组件的Windows设置 381
22.2.4 检验C++运行时环境 382
22.2.5 设置C++编译时环境 383
22.2.6 设置Microsoft Visual C/C++ 383
22.3 小结 385
第23章 构建XML数据库OCI C++
应用程序 387
23.1 设计框架 388
23.2 设置C++ OCI XML应用环境 388
23.2.1 OCI XML应用程序头文件 389
23.2.2 OCI和C++ XML应用程序库 390
23.3 创建C++ OCI帮助类 391
23.4 初始化C++数据库XML
应用程序 392
23.5 处理OCI错误 392
23.6 连接到数据库 393
23.7 断开数据库并进行清除 395
23.8 创建C++查询应用程序 396
23.9 选择到一个XMLType 397
23.10 针对XMLType XOB访问
初始化XDK 399
23.11 使用C++ XDK API查询
XMLType 400
23.12 运行应用程序 402
23.13 小结 403
第24章 构建XML数据检索应用程序 405
24.1 设计框架 406
24.2 构建cppextract应用程序 406
24.2.1 创建通用函数 406
24.2.2 使用cppextractForce实例化
通用函数 411
24.2.3 使用cppextractMain创建
Main程序 412
24.3 运行cppextract应用程序 412
24.3.1 在Extract模式下运行
cppextract 412
24.3.2 在Splitter模式下运行
cppextract 413
24.4 扩展框架 413
24.4.1 cppextract的XML文档
删除案例 413
24.4.2 cppextract的内容管理案例 414
24.5 小结 414
第Ⅵ部分 针对PL/SQL程序员
的Oracle XML
第25章 由Oracle XML和PL/SQL
开始 417
25.1 设置环境 417
25.2 PL/SQL XML处理技术 418
25.2.1 解析XML 418
25.2.2 使用DOM处理XML 425
25.2.3 使用XSLT处理XML 428
25.2.3 设置Oracle JVM 430
25.3 小结 431第26章 构建PL/SQL Web服务 433
26.1 构建和发布第一个数据库
Web服务 433
26.1.1 建立数据库方案 434
26.1.2 使用Oracle JDeveloper 10g
发布PL/SQL Web服务 436
26.1.3 从客户端调用Web服务 439
26.1.4 调试Web服务 441
26.2 在Oracle Database中实现
Web服务 442
26.2.1 构造SOAP消息 442
26.2.2 使用UTL_HTTP发送
SOAP消息 443
26.3 扩展应用 446
26.3.1 何时构建数据库服务器
中的Web服务 446
26.3.2 建立安全防护 447
26.3.3 构建不同类型的Web服务 447
26.4 小结 448
第27章 使用Java扩展PL/SQL XML
功能 449
27.1 创建Java存储过程处理XML 449
27.1.1 实现Java代码 450
27.1.2 将Java代码应用到
Oracle JVM 451
27.1.3 创建PL/SQL规范 451
27.2 运行Java存储过程 451
27.3 使用Oracle JDeveloper 10g
简化Java存储过程的部署 452
27.4 在Oracle JVM中处理XML 454
27.4.1 解析URL引用 454
27.4.2 SAX XML处理 457
27.5 开发定制的Java存储过程 461
27.5.1 使用Java存储过程的场合 461
27.5.2 如何调试Java存储过程 462
27.6 小结 463
第28章 技术综合 465
28.1 Oracle XML平台 465
28.2 XML处理层决策 466
28.3 针对XML的数据库设计决策 467
28.3.1 XMLType CLOB 468
28.3.2 XMLType视图 468
28.3.3 存储在Oracle XML DB仓库
中的XML 469
28.4 Java、C、C++和PL/SQL决策 469
28.5 扩展Oracle XML平台 471
附录A XML标准社团与XML开放规范 473
A.1 W3C规范简介 473
A.1.1 W3C XML规范 474
A.1.2 W3C DOM规范 474
A.1.3 SAX规范 475
A.1.4 W3C命名空间规范 475
A.1.5 W3C XML Schema规范 475
A.1.6 W3C XML Query规范 475
A.1.7 W3C XSLT和XPath规范 476
A.1.8 W3C XML Pipeline Definition
Language规范 476
A.1.9 W3C XML Protocol 476
A.2 Java社区过程规范 477
A.2.1 SUN JAXB规范 477
A.2.2 Sun JAXP规范 477
A.2.3 Sun StAX规范 477
A.3 ISO SQL/XML规范 477
A.4 Oracle技术资源 477
A.5 其他有用资源 478
术语表 479
猜您喜欢