《Oracle Database 10g XML与SQL开发指南》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:(美)Mark Scardina,(美)Ben Chang,(美) Jinyu Wang著;孙杨译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2006
  • ISBN:7302120234
  • 页数:487 页
图书介绍:本书使用DOM、SAX、JAXB以及StAX访问XML,创建基于XML的可重用组件,充分利用Oracle Database 10g的内置功能。

13.1.11 orai18n.jar 23 1

第1章 XML简介 3

目录 3

第Ⅰ部分 Oracle与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访问XML 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.3 使用SAX访问XML 26

2.2.4 Oracle DOM API在C语言中的应用程序 26

2.3.1 SAXLevel 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 忽略<!DOCTYPE>标记 44

2.6.3 文档间的剪切与粘贴 45

第3章 使用XSLT和XPath转换XML 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 <xsl:apply-imports/> 53

3.5.2 <xsl:apply-templates> 53

3.6 XSLT 2.0简介 53

3.6.2 函数定义 54

3.6.1 分组 54

3.6.4 临时树 55

3.6.3 多结果文档 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.2 查询数据库中的XML 83

5.4.1 Java语言的XQuery API 83

5.4 XQuery与Oracle数据库 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.3.1 Oracle Streams AQ支持 91

6.3 SOAP和Oracle数据库的应用 91

6.2.3 SOAP处理程序 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.7 XSDValidator Bean 105

7.2.5 XMLDiff bean 105

7.2.6 XMLCompress Bean 105

7.3 XSQL页面发布框架简介 106

7.2.8 XML Bean在JSP中的用法 106

7.3.1 XSQL页面 107

7.3.3 向XSQL Servlet提交查询 108

7.3.2 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.3 创建用户运行XMLType示例 126

8.2.2 安装示例数据库模式 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.4 为Web应用程序设计XML数据库的方法 141

8.5.2 检索及生成XML 141

8.5.3 搜索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.3 XMLFOREST() 174

10.1.2 SYS_XMLGEN() 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.1 基于XPath的搜索 197

第11章 搜索XML数据 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.7 classgen.jar 230

13.1.6 xsu12.jar 230

13.1.5 xmlcomp.jar、xmlcomp2.jar、xmldemo.jar和jdev-rt.zip 230

13.1.4 oraclexsql.jar和xsqlserializers.jar 230

13.1.3 xschema.jar 230

13.1.2 xml.jar 230

13.1.1 xmlparserv2.jar 230

13.1.8 xdb.jar 231

13.1.9 xmlmesg.jar 231

13.1.10 transx.zip 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.1 创建用户模板 269

15.3 增加门户功能 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.2 XSDValProcess进程 316

17.3.1 XSDSchemaBuilder进程 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.2.1 XDK C组件的UNIX设置 328

18.2 建立自己的XML开发环境 328

18.1.4 libunls10.a和oraunls10.dll 328

18.1.2 libcore10.a、libcoresh10.so和libcore10.dll 328

18.1.3 libnls10.a和oranls10.dll 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.1 定义XSLT样式单 338

19.3 创建XML配置文件 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

2 1.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.4 libunls10.a和oraunls10.dll 378

22.2 设置自己的C++XML开发环境 378

22.1.3 libnls10.a和oranls10.dll 378

22.1.2 libcore10.a、libcoresh10.so和libcore10.dll 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.5 处理OCI错误 392

23.4 初始化C++数据库XML应用程序 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.3.1 在Extract模式下运行cppextract 412

24.2.3 使用cppextractMain创建Main程序 412

24.3 运行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.3 构建不同类型的Web服务 447

26.3.2 建立安全防护 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.1 Oracle XML平台 465

第28章 技术综合 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.5 W3C XML Schema规范 475

A.1.6 W3C XML Query规范 475

A.1.3 SAX规范 475

A.1.4 W3C命名空间规范 475

A.1.7 W3CXSLT和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