《J2EE宝典》PDF下载

  • 购买积分:20 如何计算积分?
  • 作  者:(美)考迟(Couch
  • 出 版 社:
  • 出版年份:2002
  • ISBN:
  • 页数:0 页
图书介绍:

第1部分 快速入门 5

第1章 定义企业级应用 7

1.1 介绍企业级应用 7

1.1.1 网站不仅要漂亮 8

1.1.2 企业级应用的结构 9

1.1.3 企业级应用组件 11

1.2 J2EE介绍 13

1.2.1 企业级Java简史 13

1.2.2 了解J2EE 14

1.2.3 并不仅仅用于企业级应用 17

1.2.4 决定使用哪个部分 17

1.3 准备工作 18

1.3.1 下载并安装J2EE 18

1.3.2 决定项目类型 19

1.4 小结 20

第2章 介绍企业级应用 21

2.1 公司对客户应用 22

2.1.1 例1:电子商务网站 22

2.1.2 例2:机票预订系统 23

2.2 企业对企业应用 25

2.2.1 存货系统 25

2.2.2 电子支付 26

2.3 后台应用 27

2.3.1 通信应用 27

2.3.2 月度电子新闻 27

2.4 小结 28

第2部分 内容发布 29

第3章 使用Servlet创建动态内容 31

3.1 什么是Servlet 31

3.2.1 使用Servlet创建静态页面 32

3.2 创建基本的HttpServlet 32

3.2.2 在哪里运行Servlet 34

3.2.3 增加动态元素 36

3.3 介绍Servlet API 39

3.3.1 Servlet家族 39

3.3.2 ServletRequest家族 41

3.3.3 ServletResponse家族 42

3.4 保存和共享信息 43

3.4.1 会话跟踪 43

3.4.2 使用ServletContext 44

3.5 使用filter(),forward(),include()方法增加新功能 44

3.5.1 在Servlet中使用过滤器 44

3.5.2 使用forward()在servlet间转移控制 47

3.5.3 在不同资源间拼接内容 48

3.6 小结 49

4.1 创建基本的JSP页面 51

第4章 使用JSP 51

4.1.1 创建、保存和访问JSP页面 52

4.1.2 JSP的生命周期 52

4.1.3 在JSP中增加动态元素 54

4.2 在JSP中增加Java特征 56

4.2.1 在JSP中嵌入Java代码 56

4.2.2 使用JSP指令 58

4.2.3 使用动作传输控制 60

4.2.4 访问内部Java对象 61

4.3 添加JavaBean 62

4.3.1 Bean属性协定 62

4.3.2 JSP Bean标记 64

4.4 使用自定义标记 66

4.4.1 返回当前时间的类 67

4.4.2 标记库描述器 68

4.4.4 在标记中增加标记 69

4.4.3 在JSP页面中使用自定义标记 69

4.4.5 自定义标记的属性 70

4.5 同时使用JSP和Servlet 72

4.6 小结 72

第5章 使用JavaMail发送和接收电子邮件 73

5.1 什么是电子邮件 73

5.1.1 电子邮件的一天 73

5.1.2 邮件的格式 75

5.1.3 服务器的类型 78

5.2 介绍JavaMail 80

5.2.1 JavaMail包 80

5.2.2 JavaMail需求 80

5.2.3 下载JavaMail 80

5.2.4 JavaMail术语 80

5.3.1 设置电子邮件 81

5.3 发送电子邮件 81

5.3.2 构造邮件 83

5.3.3 发送邮件 85

5.3.4 发送到新闻组 85

5.3.5 带附件的邮件 86

5.4 接收电子邮件 89

5.4.1 准备接收邮件 89

5.4.2 管理收到的邮件 91

5.5 建立电子邮件过滤器 93

5.5.1 构造一个查询 93

5.5.2 管理邮件 95

5.6 小结 97

第3部分 数据库搜索 99

第6章 操作关系型数据库 101

6.1 什么是关系型数据库 101

6.1.1 关系型数据库中的数据是如何组织的 102

6.1.2 协商通信的语言 103

6.1.3 查找可用数据库 104

6.2 在RDBMS中定义信息 104

6.2.1 SQL介绍 104

6.2.2 数据库设计 105

6.2.3 使用数据类型表示数据 106

6.2.4 表管理 107

6.2.5 提高数据库性能 109

6.3 数据管理 111

6.3.1 增加新的记录 111

6.3.2 修改现存的记录 112

6.3.3 删除行 113

6.4 信息查询 113

6.4.1 创建简单查询 113

6.4.2 实现复杂查询 115

6.5 小结 117

第7章 使用JDBC操作关系型数据库 119

7.1 Java对数据库的抽象 119

7.1.1 JDBC简史 119

7.1.2 隐藏实现 120

7.2 应用JDBC 121

7.2.1 查找JDBC类 122

7.2.2 介绍JDBC驱动程序 122

7.2.3 查找适合自己数据库的驱动程序 124

7.3 连接数据库 125

7.3.1 表示单一数据库连接 125

7.3.2 使用核心类建立连接 126

7.3.3 使用企业级类建立连接 128

7.4 数据库数据结构 131

7.4.1 将SQL数据类型转换成Java数据类型 131

7.4.2 表示查询返回的信息 132

7.4.3 利用获得的结果 137

7.4.4 管理自定义的数据类型 139

7.5 操作数据库 143

7.5.1 在Java中描述一个SQL语句 143

7.5.2 查询数据库 146

7.5.3 修改数据库 148

7.6 使用企业级特征 149

7.6.1 动作批处理 149

7.6.2 为快速访问缓冲语句 151

7.6.3 事务管理 152

7.7 小结 154

第8章 使用目录服务和LDAP 155

8.1 介绍目录服务 155

8.1.1 什么是目录服务 155

8.2 介绍LDAP 157

8.1.2 何时使用目录服务 157

8.2.1 LDAP历史简介 158

8.2.2 LDAP数据库如何构造数据 158

8.2.3 标准语言 160

8.2.4 使用LDAP的软件 161

8.3 在LDAP数据库中定义信息 161

8.3.1 设计新的数据库 161

8.3.2 标准的LDAP介绍 165

8.4 数据库交互 168

8.4.1 连接数据库 168

8.4.2 查询LDAP数据库 168

8.4.3 修改LDAP数据库中的值 169

8.5 自定义数据结构 170

8.5.1 数据层次 170

8.5.2 复制 171

8.5.3 模式 172

8.6 小结 174

第9章 使用JNDI访问目录服务 175

9.1 Java对目录服务的抽象 175

9.1.1 JNDI简史 175

9.1.2 实现隐藏 176

9.1.3 包和类 177

9.2 连接一个服务 177

9.2.1 连接内容 177

9.2.2 连接命名服务 179

9.2.3 连接目录服务 182

9.3 操作数据库 184

9.3.1 一般查询 184

9.3.2 修改现存数据 187

9.3.3 改变目录服务结构 189

9.4 小结 190

第4部分 使用XML在系统间通信 191

第10章 XML基础 193

10.1 什么是XML 193

10.1.1 创建XML 194

10.1.2 显示XML 196

10.1.3 相同文件的不同视角 196

10.2 XML文档和描述 197

10.2.1 Word中的简历 198

10.2.2 HTML形式的简历 199

10.2.3 XML形式的简历 200

10.3 用于配置的XML 201

10.4 使用XML存储和共享数据 202

10.4.1 使用ObjectOutputStream进行串行化 202

10.4.2 使用XML保存状态 204

10.5 XML语法 205

10.5.1 元素 205

10.5.2 名字空间 207

10.5.3 属性 208

10.6 小结 210

第11章 使用DTD和模式描述文档 211

11.1 生成有效的XML文档 211

11.1.1 阅读DTD 212

11.1.2 文档和DTD的连接 213

11.2 编写文档类型定义 214

11.2.1 元素声明 215

11.2.2 实体声明 217

11.2.3 属性声明 217

11.3 XML有效性检查 218

11.4 使用XML模式描述文档 220

11.4.1 模式的shell 220

11.4.2 元素和属性 221

11.4.3 简单类型 222

11.4.4 复杂类型 223

11.5 小结 226

第12章 使用JAXP解析文档 227

12.1 JAXP简介 227

12.1.1 JAX包 227

12.1.2 安装JAXP和例子 228

12.1.3 安装测试 228

12.1.4 剧本的内容 230

12.1.5 格式良好文档的检查 231

12.1.6 有效性检查 232

12.2 5 SAX研究 234

12.2.1 使用SAX调用 235

12.2.2 使用DefaultHandler处理事件 237

12.3 使用DOM 239

12.3.1 创建一个文档 239

12.3.2 遍历文档 241

12.3.3 创建XML 245

12.4 小结 250

第13章 使用JDOM同XML文档交互 251

13.1 使用JDOM 251

13.1.1 为什么使用JDOM 252

13.1.2 安装JDOM并测试安装 252

13.1.3 再访DOM例子 252

13.2 JDOM API 257

13.2.1 创建文档 257

13.2.2 处理文档 261

13.2.3 输出文档 264

13.3 小结 267

第14章 转换和绑定XML文档 269

14.1 显示XML文档 269

14.1.1 使用级联样式表 269

14.1.2 使用XSLT显示文件 273

14.2 转换XML文档 283

14.2.1 莎士比亚剧本的另一个DTD 283

14.2.2 使用样式表进行转换 285

14.3 用JAXB实现绑定 289

14.3.1 安装和运行JAXB 290

14.3.2 用户素材例子介绍 292

14.3.3 改善绑定模式 293

14.3.4 UserStory.java文件 297

14.4 使用JAXB绑定 306

14.4.1 反列举:从XML文档得到Java对象 306

14.4.2 向内容树添加内容 307

14.4.3 对象的有效性检查 308

14.4.4 列举:由Java对象到XML文档 309

14.4.5 扩展由模式编译器产生的类 310

14.5 小结 313

第5部分 系统抽象 315

15.1 基本的RMI应用组件 317

第15章 探索RMI机制 317

15.1.1 远程接口 318

15.1.2 在服务器上实现远程接口 318

15.1.3 启动服务 319

15.1.4 客户端调整 320

15.1.5 编译代码 321

15.1.6 运行RMI应用程序 321

15.2 运行分布式版本 322

15.2.1 将文件分到两个目录 322

15.2.2 创建和调用安全策略 323

15.2.3 设置代码库 325

15.2.4 从一台机器中的两个目录运行应用程序 325

15.2.6 在两个不同主机上运行程序 326

15.2.5 运行http类服务器 326

15.3 使用非远程对象 328

15.3.1 发送Person对象取代String对象 328

15.3.2 对象串行化 330

15.3.3 性能问题 331

15.4 激活服务 332

15.4.1 改变远程接口的实现 332

15.4.2 修改设置类 333

15.4.3 运行范例 334

15.5 小结 335

第16章 企业级JavaBean 337

16.1 这种新级别抽象的介绍 337

16.1.1 什么是EJB 337

16.1.2 寻找开发环境 339

16.2.1 EJB应用术语 340

16.2 探索EJB服务的组件 340

16.2.2 bean的类型 342

16.2.3 应用范例 344

16.2.4 介绍EJB类和接口 345

16.3 在服务器端使用企业级bean 347

16.3.1 会话bean 347

16.3.2 实体bean 356

16.3.3 本地接口 371

16.3.4 部署bean到EJB服务器 373

16.4 在客户端使用企业级Bean 377

16.4.1 查询并使用bean 377

16.4.2 bean的应用 379

16.5 小结 386

17.1 扩展企业级JavaBean 387

17.1.1 本地bean提供更好性能 387

第17章 高级EJB技术 387

17.1.2 方法和数据的距离 391

17.1.3 bean间通信 395

17.1.4 在事务中组合bean 396

17.2 使用消息驱动bean 398

17.2.1 消息驱动Bean在应用中的角色 398

17.2.2 编写消息驱动bean 400

17.3 理解容器管理持续性 402

17.3.1 介绍CMP概念 402

17.3.2 编写CMP实体bean 404

17.3.3 容器管理的关系 412

17.3.4 EBJ QL 417

17.4 管理bean的安全问题 422

17.4.1 标识用户 422

17.4.2 配置用户访问能力 425

17.5 处理bean的配置问题 430

17.5.2 提供系统未知的配置属性 431

17.5.1 已有的配置技术概述 431

17.6 代码的使用者 433

17.6.1 EJB开发角色 433

17.6.2 非开发角色 434

17.7 小结 435

第18章 介绍CORBA 437

18.1 使用CORBA的需求 437

18.2 CORBA是什么 437

18.3 对象管理体系结构 438

18.3.1 对象服务 438

18.3.2 通用工具 439

18.3.3 域接口 439

18.3.4 应用程序接口 439

18.3.5 对象请求代理 439

18.4 范例:简单的利息计算 456

18.3.6 idltojava编译器 456

18.4.1 第1步:编写IDL接口 457

18.4.2 第2步:编译IDL文件 457

18.4.3 第3步:编写InterestServer 458

18.4.4 第4步:编写客户端代码 462

18.4.5 第5步:编译并运行应用程序 465

18.5 CORBA服务 465

18.6 CORBA和RMI的区别 466

18.7 小结 466

第19章 企业级CORBA应用 467

19.1 建立CORBA对象 467

19.2 开发CORBA服务器 468

19.3 开发CORBA客户端 479

19.3.1 从客户端应用程序访问CORBA对象 479

19.3.2 编译和运行应用程序 482

19.3.3 从Servlet访问CORBA对象 484

19.3.4 编译和运行Servlet 488

19.4 小结 490

第20章 使用Jini服务 491

20.1 快速浏览Jini 491

20.1.1 为什么需要Jini 492

20.1.2 Jini资源 492

20.2 介绍范例 493

20.2.1 Calculator(计算器)接口 493

20.2.2 Adder(加法器类)和Subtractor(减法器类) 493

20.2.3 Client(客户端类) 494

20.3 启动并且运行Jini 494

20.3.1 安装Jini 495

20.3.2 GUI工具 496

20.4 简单代理Jini计算器服务 501

20.4.1 计算器(Calculator)接口 501

20.4.2 加法和减法服务代理 502

20.4.3 创建服务 503

20.4.4 Jini计算器的客户端 505

20.4.5 编译应用程序 508

20.4.6 运行分布式应用程序 508

20.5 在Jini计算器中使用属性 511

20.5.1 设置服务厨性 511

20.5.2 在客户端创建过滤器 513

20.5.3 使用ServiceItemFilter对象 514

20.5.4 运行范例 516

20.6 缓存服务 517

20.6.1 一个简单的查询缓存范例 517

20.6.2 使用ServiceDiscoveryListener 519

20.7 使用RMI桩作为瘦代理 522

20.7.1 RMI版本的代理 522

20.7.2 RMIAddingService 523

20.8 小结 524

第6部分 构建大型系统 525

第21章 实现Web服务 527

21.1 Hello World服务 528

21.1.1 配置Axis 528

21.1.2 Hello World Web服务的客户端 528

21.1.3 一个本地的问候服务 529

21.1.4 使用tcpmon了解幕后细节 530

21.2 理解简单对象访问协议 533

21.2.1 SOAP消息的结构 533

21.2.2 SOAP与HTTP 535

21.3 部署Web服务 535

21.3.1 为例子程序准备环境 536

21.3.2 使用部署描述器 536

21.3.3 运行已部署的服务 537

21.4 使用UDDI查找Web服务 538

21.4.1 UDDI资源 539

21.4.2 通过UDDI探索Web服务 540

21.5 创建并使用WSDL文件 542

21.5.1 从HelloService生成WSDL文件 542

21.5.2 根据WSDL创建客户端 543

21.5.3 使用WSDL文件创建服务 548

21.6 发送Java对象给你的Web服务 549

21.6.1 JavaBean版HelloService的类 550

21.6.2 部署并运行应用程序 552

21.6.3 发送JavaBean 554

21.7 小结 556

第22章 Java消息服务 557

22.1 位于中间的消息 557

22.2 JMS出现之前的情况 557

22.4.1 点到点 558

22.4 消息系统的种类 558

22.3.2 纯JMS供应商 558

22.3.1 提供应用程序独立性的JMS 558

22.3 MOM遭遇JMS 558

22.4.2 发布/订阅 559

22.5 JMS概览 559

22.5.1 消息术语 559

22.5.2 接口概览 560

22.5.3 操作流程概览 561

22.6 JMS系统的建立 563

22.7 被管理对象 563

22.8 发送与接收消息 564

22.8.1 点到点——发送消息 564

22.8.2 点到点——接收消息 566

22.8.3 发布/订阅——发送消息 567

22.8.4 发布/订阅——接收消息 568

22.8.5 消息监听器 569

22.8.6 连接与会话 570

22.9 消息的细节 572

22.9.1 消息标头 572

22.9.2 消息属性 573

22.9.3 消息主体 573

22.10 使用JMS开发应用程序 575

22.10.1 连接与会话 575

22.10.2 资源管理 576

22.10.3 持续性及持续订阅 576

22.10.4 JMS和线程 576

22.10.5 JM5事务 576

22.11 一个范例 577

22.11.1 文本消息的简单收发 577

22.11.2 增添属性 586

22.11.3 增加消息选择 587

22.12.2 消息驱动的bean 589

22.12 JMS和J2EE 589

22.12.1 连接到已有系统 589

22.12.3 分布式应用程序 591

22.13 小结 592

第23章 使用JTA/JTS管理事务 593

23.1 什么是事务 593

23.1.1 事务的特征 593

23.1.2 事务处理术语 594

23.1.3 事务处理组件 595

23.1.4 分布式事务 598

23.1.5 两阶段提交 598

23.1.6 事务处理标准 599

23.2 Java事务服务 601

23.3.1 JTA接口与类 602

23.3.2 UserTransaction接口 602

23.3 Java事务API 602

23.3.3 Status接口 603

23.3.4 Synchronization接口 603

23.4 如何使用JTA/JTS 604

23.4.1 容器管理的事务 604

23.4.2 出错处理 606

23.4.3 会话bean的重新初始化 607

23.4.4 bean管理的事务 610

23.4.5 事务超时 612

23.4.6 事务隔离 613

23.5 ACME饰品公司——购物车演示 614

23.5.1 创建数据库和表 614

23.5.2 订单会话bean 615

23.5.3 库存会话bean 618

23.5.4 目录会话bean 621

23.5.5 购物车客户端应用程序 624

23.5.6 打包与部署 626

23.5.7 建立数据源 627

23.5.8 运行购物车演示程序 628

23.6 小结 628

第24章 系统体系结构问题 629

24.1 设计真实的系统 629

24.1.1 理解客户 630

24.1.2 善待工作伙伴 632

24.2 分割工作负载 633

24.2.1 将工作分摊到不同的应用层 633

24.2.2 当一台机器不够时 634

24.3 选择一种设计方法 636

24.3.1 大规模系统技术的选择 636

24.3.2 设计选择 638

24.4 实现安全性 638

24.4.3 系统安全 639

24.4.1 连接安全 639

24.4.2 数据安全 639

24.4.4 用户安全 640

24.5 小结 640

第25章 J2EE设计模式 641

25.1 设计模式基础 641

25.1.1 什么是设计模式 641

25.1.2 核心Java库里的设计模式 642

25.2 企业级设计模式介绍 645

25.2.1 企业级设计模式的角色 645

25.2.2 J2EE标准企业级设计模式 646

25.3 小结 652

附录A 安装J2EE参考实现 653

附录B J2EE API版本要求 685

附录C J2EE厂商和系统 689