《J2EE构建企业系统 专家级解决方案》PDF下载

  • 购买积分:26 如何计算积分?
  • 作  者:(美) Paul J. Perrone,et al.著;张志伟,谭郁松,张明杰译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2001
  • ISBN:7900635718
  • 页数:1038 页
图书介绍:本书介绍了当前用于构造Java企业系统的最新技术——J2EE,并提供了构造可扩缩的、安全的、具有Web功能的企业分布式系统的详尽的且具有实际意义的指导。它涉及了用J2EE开发Java企业系统的所有重要技术,包括:企业系统的基本概念及各种解决方案的范型;如何使能企业数据及分布式企业通信;分布式企业通信的公共服务;企业系统安全保证;如何使能企业Web技术及企业应用程序。本书报供的技术可用于快速构建电子商务(企业到用户即B2C)系统,企业到企业(B2B)系统,企业应用集成(EAI)处理,以及通用的分布式、基于因特网的企业系统。本书的读者应具有一定的面向对象软件开发和使用Java经验,并想用Java开发企业应用系统的人员和系统设计员。也适用于准备构建企业电子商务B2B系统的管理者和电子商务人员。

第1 部分 企业系统基础 1

第1章 企业体系结构概述 1

1.1 企业 1

1.2 企业组件 3

1.3 企业中的信息技术 4

1.4 小结 6

第2章 企业中面向对象软件开发 7

2.1 企业对象 7

2.1.1 面向对象软件元素 7

2.1.2 面向对象软件对企业的重要性 9

2.2.1 开发过程概述 10

2.2 面向对象开发过程 10

2.2.2 项目宗旨 11

2.2.3 需求分析 11

2.2.4 初步系统设计 12

2.2.5 详细设计 12

2.2.6 实现 13

2.2.7 单元测试 13

2.2.8 装配 13

2.2.9 线程测试 13

2.2.10 配置规范 13

2.2.11 系统测试 13

2.2.13 维护 14

2.2.14 开发中的反复性与阶段性 14

2.2.12 部署 14

2.3 统一建模语言 15

2.3.1 静态逻辑结构图 15

2.3.2 动态行为图 17

2.4 小结 19

第3章 企业中基于组件的软件开发 20

3.1 企业组件 20

3.2 组件模型 21

3.2.1 一般组件模型 21

3.2.2 组件模型接口 22

3.3 基于组件的开发 24

3.4.1 标准组件模型 26

3.4 标准 26

3.4.2 设计模式 27

3.5 小结 28

第4章 企业开发的Java基础 29

4.1 Java特性和版本 29

4.1.1 极具魅力的Java企业特性 30

4.1.2 Java版本历史 30

4.2 Java平台体系结构 31

4.2.1 Java开发和运行环境 31

4.2.2 Java运行平台体系结构 31

4.2.3 Java运行优化 32

4.3 Java 文件和工具 33

4.3.1 Java文件类型 33

4.3.2 基本Java 源文件结构 33

4.3.4 Java软件开发包工具 35

4.3.3 基本的JAR和Manifest文件结构 35

4.4 Java语言 36

4.4.1 Java基本类型 36

4.4.2 Java操作符 37

4.4.3 Java语言结构 38

4.5 核心Java语言API 41

4.5.1 基本语言和系统API 41

4.5.2 错误和异常 43

4.5.3 类型和数学API 43

4.5.4 反映(Reflection) 44

4.5.6 事件 46

4.4.5 无用单元回收 46

4.6 集合AIP 47

4.6.1 非关键的集合框架 48

4.6.2 映射的集合框架 50

4.7 输入/输出和状态保持API 51

4.7.1 字节I/O流 52

4.7.2 字符I/OReader和Writer 53

4.7.3 归档文件API 54

4.7.4 属性文件 54

4.8 线程API 56

4.9 时间和日期API 59

4.10 Java小应用程序 60

4.11 小结 64

5.1 J2EE模型 65

第5章 J2EE的Java企业系统体系结构 65

5.1.1 J2EE特性 66

5.1.2 J2EE 组件-容器体系结构 66

5.1.3 J2EE约束 68

5.2 企业Java和J2EE体系结构 69

5.2.1 Java企业系统体系结构概况 69

5.3 数据连接 71

5.4 通信机制 71

5.5 保证机制 73

5.6 客户连接 74

5.7 Web连接 75

5.8 应用程序连接 75

5.9 J2EE的未来发展 76

5.10 小结 77

第6章 企业用户接口 78

6.1 分布式企业用户接口 78

6.2 JavaAWT组件 81

6.2.1 AWT组件、容器和布局 81

6.2.2 AWT事件 81

6.2.3 部署考虑 82

6.3 Java SWing组件 82

6.3.1 Swing组件、容器、布局和事件 82

6.3.2 SWing模型 82

6.3.3 SWing的外观 83

6.3.4 SWing组件辅助程序 83

6.3.5 部署考虑 83

6.4.4 可访问性 84

6.4.3 打印 84

6.4.5 JavaHelp 84

6.4.1 数据传输 84

6.4 实用工具和辅助组件 84

6.4.2 拖放 84

6.5 图形和多媒体组件 85

6.5.1 AWT图像 85

6.5.2 2D图形 85

6.5.3 3D图形 85

6.5.4 Java 高级成像 85

6.5.5 Java媒体API 85

6.5.6 输入方法框架 86

6.6 Web 页面接口 86

6.6.1 Web 接口内容 86

6.7 小结 87

6.6.2 Web 接口产生器 87

第7章 使用JavaBean进行组件建模 89

7.1 JavaBean概述 89

7.2 JavaBean容器 91

7.2.1 JavaBean容器 91

7.2.2 JavaBean组件 92

7.2.3 JavaBean上下文 93

7.3 JavaBean事件 94

7.4 JavaBean属性 97

7.4.1 简单属性 97

7.4.2 数组和可索引的属性 99

7.4.3 绑定的属性 99

7.4.4 受限属性 101

7.5 JavaBean内视 102

7.6 JavaBean持续性 105

7.7 JavaBean定制 106

7.7.1 属性编辑器 106

7.7.2 定制器 107

7.8 InfoBus 108

7.9 小结 109

第2部分 使能企业数据 111

第8章 企业数据 111

8.1 数据库基础 112

8.1.1 数据模型的抽象级别 112

8.1.2 一般DBMS体系结构 112

8.1.3 事务 113

8.2.1 RDBMS体系结构 115

8.2 关系数据库 115

8.2.2 SQL 116

8.2.3 数据模型图示约定 119

8.3 对象数据库 120

8.3.1 ODBMS体系结构 120

8.4 RDBMS与ODBMS 121

8.5 关系/对象转换 123

8.6 CLI 125

8.7 嵌入式SQL 125

8.8 ODBC 127

8.9 JDBC 128

8.10 小结 128

第9章 JDBC基础 129

9.1 JDBC体系结构 129

9.2 JDBC驱动程序及其类型 132

9.2.1 驱动程序评估 135

9.3 JDBC驱动程序的配置 136

9.3.1 根据类型配置驱动程序的一般步骤 137

9.3.2 配置BeeShirts.com示例数据模型 138

9.4 JDBC连接 139

9.4.1 数据库统一资源定位器 140

9.4.2 创建连接 140

9.4.3 示例:连接到数据库 141

9.5 JDBC语句 144

9.5.1 使用普通的语句 144

9.5.2 包含联接、外部联接和LIKE子句的查询 145

9.5.3 示例:创建并执行语句 146

9.5.4 使用预先准备好的语句 149

9.5.5 示例:创建与执行预先准备好的语句 150

9.6 JDBC结果集 153

9.6.1 对结果集进行操作 153

9.6.2 获得关于结果集的信息 155

9.6.3 示例:操作结果集和结果集元数据 156

9.7 SQL与Java 之间的映射 159

9.8 JDBC元数据 161

9.8.1 获取关于数据库及驱动程序的信息 161

9.8.2 示例:数据库元数据的简单用法 162

9.9 小结 166

第10章 高级JDBC 167

10.1 可滚动的结果集 167

10.1.1 创建可滚动的结果集 168

10.1.2 在结果集中滚动 169

10.1.3 驱动程序对可滚动结果集的支持 170

10.1.4 示例:可滚动的结果集 171

10.2 可更新的结果集 177

10.2.1 创建可更新的结果集 177

10.2.2 更新行 178

10.2.3 撤消更新 178

10.2.4 插入行 178

10.2.5 册除行 179

10.2.6 数据库变化的可见性 179

10.2.7 驱动程序对可更新的结果集的支持 182

10.2.8 示例:可更新的结果集 182

10.3 成批更新 186

10.3.1 创建成批更新 187

10.3.2 执行成批更新 187

10.3.3 示例:成批更新 188

10.4 高级数据类型 190

10.4.1 Java对象类型 190

10.4.2 SQL3类型 191

10.4.3 定制类型 195

10.4.4 扩充BeeShirts.com示例数据模型 196

10.4.5 示例:通过JDBC使用高级的SQL类型 197

10.5 行集 203

10.5.1 行集的体系结构 203

10.5.2 使用行集 204

10.5.3 行集的实现 204

10.5.4 管理内部行集的状态与行为 206

10.6 存储过程 206

10.6.1 预定义的数据库函数 206

10.6.2 创建存储过程 207

10.6.3 执行存储过程 208

10.6.4 创建某些BeeShirts.com存储过程 209

10.6.5 示例:调用存储过程 210

10.7 通过JNDI来进行数据库命名 211

10.8 连接池 213

10.9 分布式事务 215

10.10 小结 216

第3部分 使能分布式企业通信 218

第11章 分布式企业通信 218

11.1 分布式系统 218

11.2 分布机制 220

11.3 网络客户 222

11.4 网络服务器 223

11.5 小结 224

第12 章 网络通信 226

12.1 网络计算 226

12.1.1 协议和通信层 227

12.2 TCP/IP协议簇 229

12.2.1 TCP/IP追根溯源 229

12.2.2 TCP/IP通信层 229

12.2.3 TCP/IP实现和工具 232

12.3 套接字编程 233

12.3.1 基本的套接字编程 234

12.3.2 UDP数据报 251

12.3.3 定制套接字和工厂 253

12.4 通信流 253

12.5 小结 255

第13章 Web通信 256

13.1 因特网和万维网 256

13.1.1 Web的历史 256

13.1.2 URL 257

13.2 HTTP 258

13.2.1 基本的HTTP行为 259

13.2.2 MIME 261

13.2.3 HTTP请求 262

13.2.4 HTTP响应 263

13.2.5 Java中基本的HTTP处理 265

13.2.6 在HTTP之外跟踪会话 265

13.2.7 HTTP-NG 267

13.3 CGI 267

13.4 Servlet 268

13.5 HTML文档 269

13.6 动态HTML生成 270

13.7 小结 270

第14章 利用CORBA进行组件建模 271

14.1 CORBA概述 271

14.1.1 对象管理体系结构 272

14.1.2 CORBA3.0 273

14.1.3 CORBA的Java企业系统角色 273

14.2 ORB 274

14.2.1 ORB概念 274

14.2.2 客户端的ORB组件 275

14.2.3 ORB协议 275

14.3.1 GIOP概述 276

14.2.4 服务器端的ORB组件 276

14.3 GIOP和IIOP 276

14.3.2 IIOP概述 277

14.3.3 可互操作的对象引用 278

14.4 服务、设施和业务对象 278

14.4.1 CORBAservices 278

14.4.2 CORBAfacilities 280

14.5 IDL 281

14.5.1 一般的CORBA IDL文件格式 282

14.5.2 CORBA IDL到Java的映射 282

14.5.3 IDL编译 286

14.5.4 Java到IDL映射 287

14.6 按值传递对象 288

14.6.1 值类型 288

14.6.3 按值传递对象编码 289

14.6.2 按值传递对象的行为顺序 289

14.6.4 按值传递对象代码示例 290

14.7 小结 292

第15 章 CORBA通信 293

15.1 分布式CORBA 293

15.1.1 可扩展性设计 294

15.1.2 CORBA开发过程 295

15.2 CORBA供应商 296

15.2.1 基本工具和配置 296

15.2.2 供产商的产品 297

15.3 Java IDL 298

15.4 CORBA接口 299

15.5.1 编译IDL并产生主框架 301

15.5 CORBA服务器和主框架 301

15.5.2 创建CORBA服务器 302

15.6 实现存储池 313

15.7 对象适配器 313

15.7.1 基于BOA的服务器注册 313

15.7.2 JavaIDL服务器注册 314

15.7.3 基于POA的服务器注册 316

15.8 接口存储池 316

15.9 CORBA客户和存根 321

15.9.1 CORBA客户和静态存根 321

15.9.2 基于DII的客户 324

15.10 CORBA命名 326

15.11 小结 328

第16章 RMI通信 329

16.1 RMI基本概念 330

16.1.1 RMI体系结构 330

16.1.2 RMI包和工具 332

16.1.3 RMI架构配置 332

16.1.4 RMI开发过程 333

16.2 JRMP 334

16.3 RMI和IIOP 335

16.4 Java到IDL的映射 336

16.5 按值传递对象和RMI 337

16.6 RMI接口 338

16.6.1 RMI接口定义示例 338

16.7.1 RMI/JRMP服务器 341

16.7 RMI服务器和主框架 341

16.7.2 RMI/IIOP服务器 350

16.8 RMI注册 353

16.8.1 注册RMI/JRMP服务器 353

16.8.2 注册RMI/IIOP服务器 357

16.9 RMI客户和存根 360

16.9.1 RMI/JRMP客户和存根 360

16.9.2 RMI/IIOP客户和存根 364

16.10 RMI查找 366

16.10.1 RMI/JRMP查找 367

16.10.2 RMI/IIOP查找 367

16.11 RMI对象激活 367

16.11.1 创建一个可激活服务器 368

16.11.2 创建一个可激活服务器注册器 370

16.11.3 RMI可激活对象客户 371

16.11.4 编译和运行示例 373

16.12 定制套接字 373

16.13 小结 375

第17章 利用COM/DCOM进行组件建模 376

17.1 COM和DCOM简介 376

17.1.1 DCOM体系结构 377

17.1.2 基于Java 的开发工具 378

17.1.3 DCOM接口 379

17.1.4 DCOM标识符 379

17.1.5 DCOM标记 379

17.1.6 服务器地点 379

17.2 COM/DCOM服务 380

17.1.7 类型库和IDL 380

17.1.8 动态激发 380

17.3 接口定义语言 381

17.3.1 一般的DCOM IDL文件格式 382

17.3.2 DCOM IDL到Java映射 383

17.4 小结 385

第18章 DCOM通信 386

18.1 机器中的DCOM 386

18.1.1 DCOM开发过程 387

18.2 DCOM接口 387

18.3 DCOM标识符 390

18.4 DCOM类型 390

18.5.2 一般的DCOM服务器 391

18.5.1 生成Java绑定 391

18.5 DCOM服务器和主框架 391

18.5.3 DCOM服务器实现示例 392

18.5.4 编译DCOM服务器 401

18.6 DCOM服务器注册 402

18.6.1 利用javareg注册 402

18.6.2 利用一个注册表文件注册 402

18.6.3 透视DCOM对象 403

18.7 DCOM客户和存根 403

18.7.1 一般的DCOM客户 404

18.7.2 DCOM客户实现示例 405

18.8 DCOM客户注册和生成 407

18.9 DCOM桥 407

18.10 小结 408

第19章 命名服务 409

第4部分 分布式企业通信的公共服务 409

19.1 命名服务简介 410

19.1.1 句柄 410

19.1.2 句字 410

19.1.3 命名上下文和系统 411

19.2 JNDI命名服务 412

19.2.1 JNDI体系结构 412

19.2.2 命名对象 414

19.2.3 可引用对象 418

19.2.4 命名事件 420

19.2.5 JNDI示例 422

19.3.1 文件系统接口 431

19.3 命名文件 431

19.3.2 JNDI文件SPI 432

19.4 CORBA命名 433

19.4.1 CosNaming IDL 434

19.4.2 CosNaming服务实现 436

19.4.3 CORBA命名接口 436

19.4.4 JNDICosNaming SPI 437

19.5 RMI 命名 440

19.5.1 RMI命名系统接口 440

19.5.2 JNDI RMI SPI 441

19.6 DNS 446

19.6.1 域名系统 446

19.7 DCOM命名 448

19.6.2 基于Java的DNS接口 448

19.7.1 利用CLSID和ProgID对DCOM类命名 449

19.7.2 利用标记进行DCOM对象命名 449

19.8 小结 451

第20章 目录和交易服务 452

20.1 目录和交易服务概述 452

20.2 JNDI目录服务 453

20.2.1 目录上下文 454

20.3 NIS作为一种目录服务 461

20.3.1 JNDI NIS SPI 461

20.4 NDS作为一种目录服务 462

20.4.1 JNDI NDDS SPI 462

20.5 LDAP作为一种目录服务 463

20.5.1 LDAP接口 464

20.5.2 JNDI LDAP SPI 466

20.5.3 JND LDAP V3 API扩展 474

20.6 CORBA作为一种交易服务 475

20.6.1 CORBA交易服务组件 476

20.6.2 服务导出 477

20.6.3 服务导入 477

20.6.4 CORBA交易示例 481

20.7 Jini作为一种交易服务 483

20.7.1 Jini组件体系结构 483

20.7.2 Jini编程模型 484

20.7.3 Jini架构 485

20.7.4 Jini工具和配置 485

20.7.5 Jini类体系结构和开发进程 486

20.7.6 Jini服务示例 489

20.8 微软活动目录服务 492

20.9 小结 493

第21章 激活服务 494

21.1 激活服务概述 494

21.2 RMI激活框架 495

21.3 CORBA激活框架 497

21.4 CORBA生命周期服务 499

21.5 DCOM激活框架 501

21.6 JavaBean激活框架 502

21.7 Web和应用程序激活框架 503

21.8 小结 505

22.1 消息传递概述 506

第22章 消息传递服务 506

22.1.1 消息服务地点 507

22.1.2 点到点的消息传递 508

22.1.3 发布-订阅消息传递 508

22.1.4 推 消息传递模型和 拉 消息传递模型 508

22.1.5 消息过滤、同步和质量 509

22.1.6 电子邮件消息传递 510

22.2 MOM 510

22.3 Java消息服务 512

22.3.1 核心JMS体系结构 513

22.3.2 点到点消息排队模型 522

22.3.3 扩展BeeShirts.com示例的数据模型 524

22.3.4 点到点消息排队示例 524

22.3.5 发布-订阅模型 532

22.3.6 发布-订阅示例 533

22.4 CORBA消息传递 539

22.4.1 CORBA事件服务 539

22.4.2 CORBA通告服务 544

22.4.3 CORBA Messaging规范 544

22.5 JavaMail 546

22.5.1 电子邮件消息传递系统 546

22.5.2 JavaMail体系结构概述 548

22.5.3 JavaMail一般部分 549

22.5.4 JavaMail一般消息 549

22.5.5 JavaMail多部分消息 551

22.5.6 JavaMail MIME消息 551

22.5.7 JavaMail事件体系结构 552

22.5.8 创建邮件会话 553

22.5.9 消息仓库 557

22.5.10 消息仓库文件夹 558

22.5.11 消息传输 562

22.5.12 JavaMail示例 563

22.6 小结 569

第23章 事务服务 570

23.1 事务 571

23.2 事务服务 573

23.2.1 事务属性 575

23.2.2 事务隔离级别 575

23.2.3 事务模型 576

23.2.4 X/OPen分布式事务处理标准 577

23.3.1 核心OTS类型 578

23.3 对象事务服务 578

23.2.5 两阶段提交协议 578

23.3.2 OTS接口 579

23.4 Java 事务API 582

23.5 JTA事务管理器接口 583

23.6 JTA应用程序接口 584

23.7 JTA和X/Open XA 586

23.8 Java事务服务 586

23.9 小结 587

第5部分 企业系统安全保证 589

第24章 高度保证企业应用程序 589

24.1 什么是保证 590

24.1.1 谁应当提供保证 590

24.2 一般的保证过程 591

24.1.2 保证和交付代价之间的两难选择 591

24.2.1 识别保证问题 592

24.2.2 评估风险 593

24.2.3 生成风险减少的计划 594

24.2.4 评估风险-减少计划的代价 594

24.2.5 评估剩余的风险 595

24.3 保证还是不保证 595

24.3.1 失败的交付代价 595

24.3.2 进行决策 595

24.4 安全性 596

24.4.1 安全保证问题模型 596

24.5 可靠性 597

24.5.1 可靠性保证问题模型 597

24.4.2 安全风险减少计划 597

24.5.2 可靠性风险减少计划 598

24.6 可用性 599

24.6.1 可用性保证问题模型 599

24.6.2 可用性风险减少计划 599

24.7 可维护性 600

24.7.1 可维护性保证问题模型 600

24.7.2 可维护性风险减少计划 601

24.8 保险性 601

24.8.1 保险性保证问题模型 601

24.8.2 保险性风险减少计划 601

24.9 小结 602

25.1 基本的安全模型 603

第25章 安全基础知识 603

25.2 加密技术 605

25.2.1 加密技术的分类 605

25.2.2 消息摘要 607

25.2.3 对称密钥 607

25.2.4 非对称密钥 607

25.3 认证和不可抵赖 608

25.3.1 认证类型 608

25.4 安全套接字层 611

25.3.2 不可抵赖 612

25.5 访问控制 612

25.5.1 随意的访问控制 612

25.5.2 基于角色的访问控制 612

25.5.3 强制性的访问控制 612

25.7 审计 613

25.5.4 防火墙访问控制 613

25.6 域 613

25.8 策略和管理 614

25.9 小结 615

第26章 基本的Java安全 616

26.1 Java安全的历史 616

26.2 Java安全体系结构 618

26.2.2 Java加密技术体系结构 620

26.2.3 Java加密技术扩展 620

26.2.4 Java安全套接字扩展 620

26.2.5 Java认证和授权服务 621

26.3 字节码验证器 621

26.4.1 类加载器体系结构和安全 622

26.4 类加载器 622

26.4.2 类加载器接口 623

26.5 安全管理器 625

26.5.1 安全管理器接口 626

26.5.2 定制安全管理器 628

26.6 Java加密技术体系结构 629

26.6.1 JCA的体系结构 629

26.6.2 加密技术引擎 631

26.6.3 加密技术服务提供商 631

26.7 小结 633

第27章 高级Java安全 634

27.1 权限 634

27.1.2 权限类型 635

27.1.1 权限体系结构 635

27.1.3 定制权限类型 640

27.2 安全策略 640

27.2.1 安全策略文件格式 641

27.2.2 在策略文件中引用属性 642

27.2.3 使用安全策略文件 642

27.2.4 安全策略工具 643

27.2.5 安全策略API 643

27.3 Java访问控制 644

27.3.1 访问控制体系结构 645

27.3.2 防护对象 647

27.3.4 细粒度的和可配置的访问控制示例 650

27.4 主体标识 652

27.4.1 密钥 652

27.4.2 证书 654

27.4.3 密钥和证书存储 655

27.4.4 使用密钥和证书 656

27.3.3 Security Manager到访问控制的映射 657

27.5 保护对象 660

27.5.1 消息摘要 660

27.5.2 签名 663

27.5.3 签名对象 665

27.6 对代码签名 667

27.6.1 JAR Signer工具 667

27.6.2 代码签名的过程 668

27.6.3 代码签名示例 668

27.7.1 Java加密技术扩展 671

27.7 Java安全扩展 671

27.7.2 Java安全套接字扩展 672

27.7.3 Java认证和授权服务 674

27.8 小结 676

第28章 CORBA安全 677

28.1 CORBA安全概述 678

28.1.1 CORBA安全包 679

28.1.2 CORBA安全体系结构 679

28.1.3 核心CORBA安全接口 681

28.2 认证 683

28.3 代理 687

28.4 授权 688

28.5 审计 690

28.6 不可抵赖 691

26.2.1 核心Java2安全体系结构 691

28.7 加密 694

28.8 安全策略 695

28.9 安全管理 697

28.10 小结 697

第6部分 使能企业Web 技术 698

29.1 Web浏览器 699

29.1.1 Web浏览器体系结构 699

29.1.2 Web浏览器实现 700

29.2 Web浏览器安全 701

29.2.1 Web浏览器安全问题 701

29.2.2 Web浏览器的安全解决方案 701

29.3.1 安装Java插件至Web浏览器中 702

29.3 Java插件 702

29.3.2 指定Java插件JRE的使用 703

29.4 Web服务器 704

29.4.1 Web服务器体系结构 705

29.4.2 Web服务器实现 706

29.5 Web服务器安全 707

29.5.1 Web服务器安全问题 707

29.5.2 Web服务器安全解决方案 708

29.6 Web服务器的可用性 709

29.7 小结 710

第30章 传统Web编程和Java 711

30.1 HTML编程 711

30.1.1 HTML概述 712

30.1.2 HTML结构控制和显示元素 713

30.1.3 HTML表单 717

30.2 CGI编程 719

30.2.1 CGI程序示例 719

30.2.2 具有状态的CGI应用程序 722

30.2.3 CGI的优缺点 723

30.3 脚本语言 723

30.3.1 JavaScript 724

30.3.2 VBScript 726

30.3.3 Perl 726

30.4 活动服务器页面 727

30.5 基于Java的Web编程 728

30.6 小结 729

第31章 XML 730

31.1 XML概述 731

31.2 XML格式化 732

31.2.1 注释 733

31.2.2 XML声明 733

31.2.3 元素 733

31.2.4 属性 734

31.2.5 实体引用 734

31.2.6 处理指令 735

31.2.7 不分析的字符数据 735

31.2.8 良好格式的XML文档 736

31.3 DTD声明 736

31.3.1 文档类型定义标头 737

31.3.2 元素声明 737

31.3.3 记法声明 738

31.3.4 实体声明 739

31.3.5 属性声明 739

31.3.6 合法的XML文档 740

31.3.7 DTD示例 740

31.4 XML中的超链接 742

31.4.1 XLink 742

31.4.2 XPointer 745

31.5 XML样式表 745

31.6 XML的简单API 746

31.6.1 SAX体系结构 747

3.6.2 核心SAX对象 747

31.6.3 SAX应用程序的处理程序接口 748

31.6.4 SAX分析器接口 755

31.7 文档对象模型 758

31.7.1 DOM体系结构 759

31.7.2 DOM节点 759

31.7.3 DOM节点类型 762

31.7.4 DOM分析 766

31.8 Java和XML 768

31.8.1 Java企业API和XML 769

31.8.2 J2EE和XML 770

31.8.3 使用XML的J2EE应用程序部署描述 770

31.9 小结 772

第32章 Java Servlet 773

32.1 Servlet体系结构 773

32.1.2 Servlet生命周期 774

32.1.1 Servlet逻辑结构和物理结构 774

32.2 Servlet接口 775

32.2.1 Servlet 异常抽象 775

32.2.2 基本Servlet 框架抽象 776

32.2.3 Servlet框架示例 779

32.3 Servlet HTTP接口 781

32.3.1 基本HTTP Servlet框架抽象 781

32.3.2 Java HTTP Servlet 示例:BeeShirts.com 783

32.4 请求处理 787

32.4.1 请求处理抽象 787

32.4.2 Servlet请求调度抽象 790

32.4.3 请求处理示例 792

32.5 响应生成 795

32.5.1 响应处理抽象 795

32.5.2 响应处理示例 797

32.6 会话管理 801

32.6.1 会话管理抽象 801

32.6.2 会话管理示例 803

32.7 Servlet部署 806

32.7.1 Web应用程序部署描述符的格式 806

32.7.2 Web应用程序部署过程 812

32.7.3 Web应用程序目录结构 813

32.7.4 J2EE引用实现服务器启动和部署 814

32.7.5 BEA WebLogic服务器启动和部署 815

32.8 Servlet配置 815

32.8.1 单独的servlet配置 816

32.8.2 Servlet上下文配置 816

32.8.3 Servlet应用程序配置 817

32.9 Servlet服务管理 819

32.9.1 Servlet线程和激活服务管理 819

32.9.2 EJB和资源命名服务管理 820

32.9.3 Servlet事务服务管理 820

32.9.4 Servlet安全服务管理 821

32.9.5 Servlet可用性服务管理 823

32.10 小结 824

第33章 JavaServer Page 825

33.1 JSP概述 825

33.1.1 JSP体系结构 826

33.1.2 JSP的工作阶段 826

33.1.3 BeeShirts.com JSP示例 827

33.2.1 JSP标准元素与基于XML的元素 830

33.2 JSP语言基础 830

33.2.2 标记 831

33.2.3 注释 831

33.2.4 特殊字符处理 832

33.3 JSP转换指令与编译指令 832

33.3.1 include指令 832

33.3.2 page指令 833

33.3.3 taglib指令 834

33.3.4 指令示例 835

33.4 JSP中的Java脚本编程 836

33.4.1 声明语句 836

33.4.2 表达式 837

33.4.3 scriptlet 838

33.5.1 页面上下文 839

33.5 JSP的Java抽象 839

33.5.2 页面名柄 842

33.5.3 JSP工厂与JSP容器信息 843

33.5.4 定制JSP类 844

33.6 JSP中的标准Java对象 844

33.6.1 隐含对象 844

33.6.2 对象范围 845

33.6.3 JSP对象处理示例 845

33.7 JSP中的标准Java动作 849

33.7.1 jsp:param动作子元素 849

33.7.2 jsp:forward动作 850

33.7.3 jsp:include动作 850

33.7.4 jsp:useBean动作 851

33.7.5 jsp:setProperty动作 852

33.7.7 jsp:plugin动作 854

33.7.6 jsp:getPropery 动作 854

33.7.8 标准动作示例 856

33.8 JSP配置与部署 858

33.8.1 关于JSP部署描述符的考虑 858

33.8.2 JSP配置 859

33.8.3 直接的JSP部署过程 861

33.8.4 预编译JSP部署过程 862

33.9 JSP中的定制Java动作与标记 863

33.9.1 JSP定制标记扩展抽象 863

33.9.2 标记库 864

33.10 小结 867

第34章 企业应用程序平台 868

第7部分 使能企业应用程序 868

34.1 企业平台概述 869

34.2 TP监视程序平台 869

34.3 OTM 871

34.4 通用应用程序框架 872

34.5 基于Java的标准通用应用程序框架 874

34.6 CORBA组件 875

34.7 Microsoft的通用应用程序框架 876

34.8 特定应用程序的平台 878

34.9 企业应用程序管理 879

34.10 小结 879

第35章 应用程序服务器与企业JavaBean 881

35.1 独立的企业应用程序 881

35.2 基于应用程序服务器的企业应用程序 882

35.3 应用程序服务器体系结构供应商的作用 885

35.4 应用程序服务器组件 886

35.5 应用程序服务器客户接口 888

35.6 应用程序服务器的客户实现 890

35.7 企业应用程序的配置与部署 894

35.7.1 服务器的配置与部署示例 894

35.7.2 客户配置与部署示例 895

35.8 应用程序服务管理 896

35.9 小结 898

第36章 利用企业JavaBean进行组件建模 899

36.1 EJB概述 899

36.1.1 EJB体系结构 900

36.1.2 EJB类型 901

36.1.3 EJB异常类型 902

36.1.4 EJB开发过程的考虑与步骤 903

36.1.5 BeeShirts.com EJB应用程序 904

36.2 EJB配置与部署的基础知识 908

36.2.1 EJB部署描述符顶级元素 908

36.2.2 EJB JAR文件 909

36.2.3 EJB部署过程 909

36.2.4 J2EE引用实现服务器的启动与部署 911

36.2.5 BEA WebLogic Server的启动与部署 911

36.2.6 J2EE测试客户的启动 912

36.3 会话Bean服务器组件 913

36.3.1 无状态会话 Bean 913

36.3.2 有状态会话 Bean 917

36.4.1 会话Bean远程接口 923

36.4 会话Bean客户接口 923

36.4.2 会话Bean本地接口 926

36.5 会话Bean的配置与部署 931

36.6 EJB与JDBC 934

36.7 实体 Bean服务器组件 935

36.7.1 暂存实体Bean 936

36.7.2 主键 936

36.7.3 Bean所管理的持续性实体Bean 937

36.7.4 容器管理的持续性实体Beav 945

36.8 实体Bean客户接口 950

36.8.1 实体Bean远程接口 950

36.8.2 实体Bean本地接口 953

36.9 实体Bean的配置与部署 957

36.10 小结 962

第37章 高级企业 JavaBean服务 963

37.1 EJB事务 963

37.1.1 由Bean所管理的事务划分 964

37.1.2 由容器管理的事务划分 967

37.2 EJB安全性 970

37.2.1 标准的EJB安全性编程机制 971

37.2.2 标准声明性EJB安全机制 971

37.2.3 特定供应商访问控制映射方法 973

37.2.4 特定供应商身份与认证 974

37.2.5 扩展BeeShirts.com示例中的数据模型 975

37.2.6 BeeShirts.com安全性 975

37.3 EJB/Web连接 977

37.3.1 BeeShirts.com:一个集成的J2EEWeb和EJB电子商务应用程序 977

37.3.2 Web/EJB连接方法和示例 979

37.4 EJB/CORBA连接 983

37.4.1 EJB作为CORBA客户 983

37.4.2 EJB作为CORBA服务器 983

37.5 EJB与XML 985

37.6 EJB与JMS 987

37.6.1 EJB作为JMS消息产生者 988

37.6.2 EJB作为JMS消费者 988

37.7 EJB与JavaMail 991

37.8 小结 993

第38章 企业应用程序集成 994

38.1 企业应用程序集成概述 994

38.2 利用JNI实现EAI 995

38.3 利用分布式企业通信范型实现EAI 998

38.3.1 利用TCP/IP实现EAI 999

38.3.2 利用Http实现EAI 999

38.3.3 利用CORBA实现EAI 1000

38.3.4 利用RMI实现EAI 1001

38.3.5 利用DCOM实现EAI 1001

38.4 利用消息服务与JMS实现EAI 1002

38.5 利用XML实现EAI 1003

38.6 利用J2EE连接程序实现EAI 1004

38.7 嵌入式应用程序集成 1005

38.8 小结 1007

第8部分 附录 1008

附录A 软件配置 1008

附录B 其他资源 1032