The J2EETM Tutorial中文版

The J2EETM Tutorial中文版
作 者: Stephanie Bodoff 颜承
出版社: 中国铁道出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: J2EE
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《The J2EETM Tutorial中文版》作者简介

内容简介

或许你已经非常熟悉Java程序开发,但是现在,你应该进入更高一个层次,使用Java2平台企业版(J2EE)来创建企业级应用程序。《The J2EETM Tutorial 中文版》以丰富的实例提供独一无二的技术指导,对于每一位在J2EE平台上开发和部署应用程序的开发人员来说,都是一本案头必备的参考手册。《The J2EETM Tutorial 中文版》的作者是Sun Microsystem公司Java开发小组资深的开发人员,与另一部取得空前成功的《The JavaTM Tutorial》一样,建立了与读者之间最为有效的交互途径。同时,在本书的编写过程中,也综合了大量来自于最终用户和系统设计师们的建议与反馈,保证了《The J2EETM Tutorial 中文版》能真正提供有价值的技术指导。你会发现书中使用了许多构思精巧的实例程序(包括源码)来描述J2EE关键的概念。此外,简明扼要的文字说明也有助于你快速掌握J2EE平台的多项技术,包括:Enterprise JavaBeanJava ServletJavaServer PagesJava Message Service (JMS,Java消息服务)Java Naming and Directory Interface (JNDI,Java名字与目录接口)XMLJ2EE Connector Architecture (J2EE连接器架构)JavaMailJDBC当你准备创建自己的大型企业级应用系统时,希望求助于无以伦比的技术指导、知识和经验时,你会发现在《The J2EETM Tutorial 中文版》一书中你能找到所有的一切。本书的配套光盘中提供了大量有价值的资源,包括全套的《JavaTutorial》电子版,J2SE v1.3.1和J2EE v1.3.1软件开发包,Java BluePrint的实例程序与电子书,以及Forte的一个J2EE插件。Stephanie Bodoff, Dale Green, Kim Haase, 和Eric Jendrock是Sun Microsystem公司的专职作家,他们与Java开发人员团体(JDC)的Monica Pawlan一起编写了J2EE平台的联机文档。Beth Stearns是Computer Ease出版社的总裁。

图书目录

第 1 章 概 论 1

1-1 分布式多层应用 2

1-1-1 J2EE组件 3

1-1-2 J2EE客户 3

1-1-3 Web组件 5

1-1-4 业务组件 5

1-1-5 企业信息系统层 6

1-2 J2EE 容器 6

1-2-1 容器服务 7

1-2-2 容器类型 7

1-3 打包 8

1-4 开发角色 9

1-4-1 J2EE产品提供者 10

1-4-2 工具提供者 10

1-4-3 应用程序组件提供者 10

1-4-4 应用程序组装者 11

1-4-5 应用程序部署者和管理员 11

1-5 J2EE参考实现 11

1-5-1 数据库访问 12

1-5-2 J2EE API 12

1-5-3 简化的系统集成 15

1-5-4 工具 15

第 2 章 开始:第一个实例 17

2-1 安装与配置 18

2-1-1 下载例子代码 18

2-1-2 下载Ant工具 18

2-1-3 检查环境变量 18

2-1-4 启动J2EE服务器 18

2-1-5 运行部署工具 19

2-2 创建J2EE应用程序 19

2-3 开发企业Bean 19

2-3-1 编写企业Bean代码 19

2-3-2 编译源代码 21

2-3-3 打包企业Bean 22

2-4 开发J2EE应用程序客户端 23

2-4-1 编写J2EE应用程序客户端代码 23

2-4-2 编译J2EE应用程序客户的源代码 25

2-4-3 打包J2EE应用程序客户端 26

2-4-4 设置J2EE应用程序客户端对EJB的引用 26

2-5 开发Web客户 27

2-5-1 编写Web客户代码 27

2-5-2 编译Web客户的源码 29

2-5-3 打包Web客户 29

2-5-4 设置Web客户对EJB的引用 30

2-6 设置JNDI名字 30

2-7 部署J2EE应用程序 31

2-8 运行J2EE 应用程序客户端 32

2-9 运行Web客户端 32

2-10 修改J2EE应用程序 33

2-10-1 修改类文件 33

2-10-2 增加文件 34

2-10-3 修改部署配置 34

2-11 常见问题及解决 35

2-11-1 不能启动J2EE服务器 35

2-11-2 编译错误 36

2-11-3 部署错误 36

2-11-4 J2EE应用程序客户端运行时错误 37

2-11-5 Web客户端运行时错误 39

2-11-6 用验证工具检查错误 39

2-11-7 比较本书提供的EAR文件 39

2-11-8 其他错误 40

第 3 章 企业 Bean 41

3-1 企业 Bean定义 42

3-1-1 企业Bean的优势 42

3-1-2 企业Bean的应用场合 42

3-1-3 企业Bean的类型 42

3-2 会话Bean定义 43

3-2-1 状态管理模式 43

3-2-2 会话Bean的应用场合 44

3-3 实体Bean定义 44

3-3-1 实体Bean与会话Bean的区别 44

3-3-2 容器管理持久性 45

3-3-3 实体Bean的应用场合 48

3-4 消息驱动Bean定义 48

3-4-1 消息驱动Bean与会话、实体Bean的区别 48

3-4-2 消息驱动Bean的应用场合 49

3-5 使用接口实现客户端访问 49

3-5-1 远程访问 50

3-5-2 本地访问 50

3-5-3 本地接口和容器管理关系 51

3-5-4 远程访问与本地访问模式的选择 51

3-5-5 性能和访问 52

3-5-6 方法参数和访问 52

3-6 企业Bean的内容 52

3-7 企业Bean的命名约定 53

3-8 企业Bean的生命周期 53

3-8-1 有状态会话Bean的生命周期 53

3-8-2 无状态会话Bean的生命周期 54

3-8-3 实体Bean的生命周期 54

3-8-4 消息驱动Bean的生命周期 56

第 4 章 会话Bean的例子 57

4-1 CartEJB例子 58

4-1-1 会话Bean类 58

4-1-2 Home接口 62

4-1-3 远程接口 63

4-1-4 辅助类 64

4-1-5 运行CartEJB例子 64

4-2 企业Bean的其他特征 65

4-2-1 访问环境条目 65

4-2-2 比较企业Bean 67

4-2-3 传递企业Bean的对象引用 68

第 5 章 Bean管理持久性的例子 69

5-1 SavingsAccountEJB例子 70

5-1-1 实体Bean的Bean类 70

5-1-2 Home接口 79

5-1-3 远程接口 81

5-1-4 运行SavingsAccountEJB例子 82

5-2 用于Bean管理持久性的实体Bean的deploytool技巧 83

5-3 Bean管理持久性中的映射表关系 83

5-3-1 一对一关系 83

5-3-2 一对多关系 86

5-3-3 多对多关系 93

5-4 Bean管理持久性中的主键 96

5-4-1 主键类 96

5-4-2 实体Bean中的主键 97

5-4-3 获得主键 98

5-5 异常处理 99

第 6 章 容器管理持久性的例子 101

6-1 RosterApp应用概述 102

6-2 PlayerEJB代码 102

6-2-1 实体Bean类 103

6-2-2 本地home类 106

6-2-3 本地接口 107

6-3 RosterApp设置指南 108

6-3-1 RosterApp 108

6-3-2 RosterClient 109

6-3-3 RosterJAR 110

6-3-4 TeamJAR 110

6-4 RosterApp中的方法调用 115

6-4-1 创建Player 115

6-4-2 给Team添加Player 116

6-4-3 删除Player 117

6-4-4 从Team中丢弃Player 118

6-4-5 获得Team的Players 119

6-4-6 获得Team的Players的拷贝 120

6-4-7 通过Position找到Players 122

6-4-8 获得Player的Sports 123

6-5 运行RosterApp例子 124

6-5-1 设置 124

6-5-2 部署应用 124

6-5-3 运行客户程序 125

6-6 用于容器管理持久性实体Bean的deploytool技巧 125

6-6-1 给定Bean的类型 125

6-6-2 选择持久域和抽象名 125

6-6-3 为finder和select方法定义EJB QL查询 126

6-6-4 生成SQL和创建表 126

6-6-5 指定数据库JNDI名字、用户名和密码 126

6-6-6 定义关系 127

6-7 用于容器管理持久性的主键 127

6-7-1 主键类 127

6-7-2 实体Bean类中的主键 129

6-7-3 产生主键值 129

第 7 章 消息驱动Bean的例子 131

7-1 应用例子概述 132

7-2 J2EE应用客户端 132

7-3 消息驱动Bean类 133

7-3-1 onMessage方法 133

7-3-2 ejbCreate和ejbRemove方法 134

7-4 运行SimpleMessageEJB例子 134

7-4-1 启动J2EE服务器 134

7-4-2 创建队列 135

7-4-3 部署应用 135

7-4-4 运行客户程序 135

7-5 用于消息驱动Bean的deploytool技巧 136

7-5-1 给出Bean类型和事务管理 136

7-5-2 设置消息驱动Bean参数 136

7-6 用于JMS客户的deploytool技巧 137

7-6-1 设置资源引用 137

7-6-2 设置资源环境引用 138

7-6-3 给定JNDI名字 138

第 8 章 EJB 查询语言 139

8-1 术语 140

8-2 简化后的语法 140

8-3 查询例子 141

8-3-1 简单finder查询 141

8-3-2 浏览相关Bean的finder查询 142

8-3-3 其他条件表达式的finder查询 143

8-3-4 Select查询 144

8-4 完整语法 145

8-4-1 BNF符号 145

8-4-2 EJB QL中的BNF语法 145

8-4-3 FROM子句 149

8-4-4 Path表达式 152

8-4-5 WHERE子句 154

8-4-6 SELECT子句 160

8-5 EJB QL局限性 161

第 9 章 Web客户和组件 163

9-1 Web客户生命周期 164

9-2 Web应用存档文件(WAR) 166

9-2-1 创建WAR文件 166

9-2-2 在EAR文件中添加WAR文件 167

9-2-3 在WAR文件中添加Web组件 167

9-3 配置Web客户 168

9-3-1 应用级配置 169

9-3-2 WAR级配置 169

9-3-3 组件级配置 171

9-4 部署Web客户 172

9-5 运行Web客户 172

9-6 更新Web客户 172

9-7 国际化Web客户 174

第 10 章 Java Servlet技术 177

10-1 什么是Servlet 178

10-2 Servlet示例 178

10-2-1 调试 181

10-3 Servlet的生命周期 182

10-3-1 处理Servlet生命周期事件 182

10-3-2 错误处理 184

10-4 信息共享 184

10-4-1 使用范围对象 184

10-4-2 控制共享资源的并发访问 185

10-4-3 访问数据库 186

10-5 初始化servlet 187

10-6 编写服务方法 188

10-6-1 从请求中获取信息 188

10-6-2 构建响应 190

10-7 过滤请求和响应 192

10-7-1 编写过滤器 193

10-7-2 编写定制的请求和响应 194

10-7-3 设置过滤映射 196

10-8 调用其他Web资源 198

10-8-1 在响应中包括其他资源 198

10-8-2 将控制传递给另一个Web组件 199

10-9 访问Web上下文 200

10-10 维护客户状态 201

10-10-1 访问会话 201

10-10-2 将属性与会话关联 201

10-10-3 会话管理 202

10-10-4 会话跟踪 203

10-11 结束Servlet 204

10-11-1 跟踪服务请求 204

10-11-2 将应用结束信息传递给方法 205

10-11-3 创建良好的长时间运行方法 206

第 11 章 JavaServer Pages 技术 207

11-1 什么是JSP页面 208

11-2 JSP页面示例 210

11-3 JSP页面的生命周期 214

11-3-1 翻译和编译 214

11-3-2 执行 215

11-4 初始化和结束JSP页面 216

11-5 创建静态内容 217

11-6 创建动态内容 217

11-6-1 使用JSP页面中的对象 217

11-6-2 JSP脚本元素 219

11-7 在JSP页面中包含其他文件的内容 222

11-8 将控制传递给另一个Web组件 223

11-8-1 Param元素 223

11-9 包含Applet 224

11-10 扩展JSP语言 226

第 12 章 在JSP页面中的JavaBeans组件 227

12-1 JavaBeans组件的设计规范 228

12-2 为什么使用JavaBeans组件 229

12-3 创建和使用JavaBeans组件 229

12-4 设置JavaBeans组件属性 230

12-5 获取JavaBeans组件属性 232

第 13 章 JSP页面中的定制标签 235

13-1 什么是定制标签 236

13-2 JSP页面示例 236

13-3 使用标签 240

13-3-1 声明标签库 240

13-3-2 标签的种类 240

13-4 定义标签 243

13-4-1 标签处理器 243

13-4-2 标签库描述符 244

13-4-3 简单的标签 246

13-4-4 带属性的标签 247

13-4-5 带标签体的标签 249

13-4-6 定义脚本变量的标签 251

13-4-7 标签的相互协作 254

13-5 示例 256

13-5-1 迭代标签 256

13-5-2 模板标签库 260

13-6 如何调用标签处理器 265

第 14 章 事务处理 267

14-1 什么是事务 268

14-2 容器管理的事务 268

14-2-1 事务属性 268

14-2-2 回滚容器管理的事务 271

14-2-3 同步会话bean的实例变量 272

14-2-4 不容许在容器管理的事务中使用的方法 273

14-3 Bean管理的事务 274

14-3-1 JDBC事务 274

14-3-2 JTA事务 275

14-3-3 不提交的返回 276

14-3-4 不容许在Bean管理的事务中使用的方法 277

14-4 企业Bean事务选项的总结 277

14-5 事务超时 278

14-6 隔离级别 278

14-7 更新多个数据库 279

14-8 在Web组件中的事务 280

第 15 章 安全 281

15-1 概述 282

15-2 安全角色 282

15-2-1 声明和链接的角色引用 283

15-2-2 将角色映射到J2EE的用户和组 283

15-3 Web层的安全 284

15-3-1 保护Web资源 284

15-3-2 控制对Web资源的访问 284

15-3-3 对Web资源的用户认证 285

15-3-4 在Web层使用安全编程 286

15-3-5 未受保护的Web资源 286

15-4 EJB层的安全 287

15-4-1 声明方法权限 287

15-4-2 在EJB层使用安全编程 287

15-4-3 未保护的EJB层资源 287

15-5 应用程序客户层的安全 288

15-5-1 配置应用程序客户的回调处理方法 288

15-6 EIS层的安全 289

15-6-1 配置登录 289

15-6-2 容器管理的登录 289

15-6-3 组件管理的登录 290

15-6-4 配置资源适配器的安全 290

15-7 传递安全标识符 291

15-7-1 配置组件的传递安全标识符 291

15-7-2 配置客户认证 292

15-8 J2EE用户、域和组 293

15-8-1 管理J2EE的用户和组 293

15-9 创建服务器证书 294

第 16 章 资源连接 297

16-1 JNDI名字和资源引用 298

16-1-1 Deploytool工具中配置资源引用的技巧 298

16-2 企业Bean中的数据库连接 300

16-2-1 代码连接 300

16-2-2 连接池 302

16-3 邮件会话连接 302

16-3-1 运行ConfirmerEJB例子 304

16-4 URL连接 305

16-4-1 运行HTMLReaderEJB例子 306

第 17 章 J2EE连接器架构 307

17-1 关于资源适配器 308

17-1-1 资源适配器约定 308

17-1-2 管理资源适配器 309

17-2 黑箱资源适配器 310

17-2-1 事务级别 310

17-2-2 属性 311

17-2-3 配置JDBC驱动 311

17-3 资源适配器指南 312

17-3-1 设置 312

17-3-2 部署资源适配器 312

17-3-3 测试资源适配器 313

17-4 公共客户接口 315

17-4-1 CCI概述 315

17-4-2 CCI编程 316

17-4-3 CCI客户编程 323

17-4-4 CCI教程 324

第 18 章 综合实例:Duke的银行 329

18-1 企业Bean 330

18-1-1 会话Bean 331

18-1-2 实体Bean 333

18-1-3 辅助类 333

18-1-4 数据库表 334

18-1-5 保护企业Bean 335

18-2 应用客户 335

18-2-1 类和类之间的关系 336

18-2-2 BankAdmin类 337

18-2-3 EventHandle类 338

18-2-4 DataModel类 339

18-3 Web客户端 341

18-3-1 设计策略 343

18-3-2 Web客户生命周期 343

18-3-3 保护Web资源 347

18-4 国际化 348

18-5 建立、打包、部署及运行应用程序 349

18-5-1 添加组和用户到域 349

18-5-2 启动J2EE服务器、deploytool和数据库 350

18-5-3 编译企业Bean 351

18-5-4 打包企业Bean 351

18-5-5 编译Web客户 351

18-5-6 打包Web客户 351

18-5-7 编译J2EE应用客户 352

18-5-8 打包J2EE应用客户 352

18-5-9 打包企业存档文件 352

18-5-10 打开企业存档文件 352

18-5-11 回顾JNDI名字 353

18-5-12 映射安全角色到用户组 354

18-5-13 部署Duke的银行应用 355

18-5-14 创建Bank数据库 356

18-5-15 运行J2EE应用客户 356

18-5-16 运行Web客户 357

附 录 A HTTP 概述 359

A-1 HTTP 请求 360

A-2 HTTP响应 360

附 录 B J2EE SDK工具 361

B-1 J2EE 管理工具 362

B-2 清除工具 363

B-3 Cloudscape服务器 363

B-3-1 启动Cloudscape 363

B-3-2 停止Cloudscape 364

B-3-3 运行交互式SQL工具 364

B-3-4 Cloudscape服务器配置 365

B-4 部署工具 365

B-5 J2EE服务器 366

B-6 密匙工具 366

B-7 打包工具 367

B-7-1 EJB JAR文件 367

B-7-2 应用客户JAR文件 367

B-7-3 应用客户JAR文件 368

B-7-4 J2EE应用EAR文件 368

B-7-5 指定运行时部署描述符 369

B-7-6 资源适配器RAR文件 370

B-8 域工具 370

B-9 runclient脚本 371

B-9-1 语法 371

B-9-2 例子 371

B-9-3 访问远程服务器 372

B-9-4 阻止用户名和密码提示 372

B-10 验证器工具 372

B-10-1 命令行验证器 373

B-10-2 独立GUI验证器 373

附 录 C 示例一览 375

附 录 D 术语表 379 【媒体评论】