译者序 1
前言 1
作者简介 1
第1章IBM WebSphere概述 1
1.1什么是WebSphere 1
目录 1
1.2 J2EE简史 2
1.3 J2EE体系结构 3
1.3.1 J2EE体系结构:组件 3
1.3.2 J2EE体系结构:容器 5
1 3.3 J2EE体系结构:J2EE服务器 . 5
1.3.6 J2EE体系结构:服务 6
1.3.4 J2EE体系结构:驱动程序 6
1.3.5 J2EE体系结构:数据库 6
1.3.7 J2EE体系结构:角色 7
1.4 WebSphere简介 9
1.4.1 WebSphere应用服务器 9
1.4.2 WebSphere Studio 9
1.5小结 10
1.6自测 10
1.6.1关键术语 10
1.6.2复习题 10
2.1.1启动工作台 11
2.1透视图、视图和编辑器简介 11
应用程序开发 11
第2章WebSphere Studio环境下的企业 11
2.1.2命令行选项 12
2.2常用透视图 13
2.2.1 J2EE透视图 13
2.2.2 Java透视图 15
2.2.3 Web透视图 20
2.3 WebSphere Studio测试方案 25
2.3.1使用通用测试客户端和WebSphere测试环境测试EJB 25
2.3.2设置WebSphere测试环境 25
2.3.3通用测试客户端应用程序 29
2.3.4单元测试:客户端应用程序启动器 32
2.3.5用远程服务器测试环境测试Web组件 34
23.6调试透视图 37
2.4小结 41
2.5自测 42
2.5.1关键术语 42
2.5.2复习题 42
第3章 servlet 43
3.1 servlet简介 43
3.1.1使用servlet 44
3.1.2服务器端编程 44
3.1.3处理流程 44
3.2.2生命周期 45
3.2.1并发请求 45
3.2 servlet的体系结构 45
3.2.3 servlet的请求与响应 46
3.2.4数据编码 46
3.2.5 GET请求和POST请求 47
3.2.6处理GET请求 48
3.2.7处理POST请求 48
3.3创建和测试servlet 51
3.3.1 J2EE打包 51
3.3.2创建Web工程 52
3.3.4创建servlet 54
3.3.3 Web工程文件夹的结构 54
3.3.5 servlet部署描述文件 58
3.3.6运行servlet 59
3.3.7使用调试器 59
3.3.8设置断点 59
3.3.9在服务器上调试 59
3.4管理会话状态 60
3.4.1 cookie 60
3.4.2会话管理 62
3.4.3体系结构 62
3.5模型-视图-控制器 65
3.5.1 MVC的重要性 65
3.5.3 servlet重定向 66
3.5.2 MVC中的servlet 66
3.5.4将数据保存到请求中 67
3.5.5请求转发 67
3.5.6将数据保存到ServletContext中 67
3.5.7保存servlet数据的最佳方法 68
3.6应用程序生命周期事件 68
3.6.1事件类型 68
3.6.2创建Web应用程序生命周期 70
事件监听器 70
3.6.3生命周期监听器部署描述文件 70
3.6.4调试应用程序事件监听器 71
3.7过滤器 71
3.7.1创建servlet过滤器 72
3.7.2 servlet过滤器部署描述文件 75
3.7.3调试servlet过滤器 76
3.8小结 76
3.9自测 76
3.9.1关键术语 76
3.9.2复习题 76
第4章JSP 77
4.1 JSP简介 77
4.1.1编译过程 78
4.1.2 JSP和servlet的比较 78
4.2 JSP语法 78
4.2.1注释 78
4.2.2元素 79
4.23错误处理和错误页 86
4.3创建和测试JSP页面 87
4.3.1创建JSP页面 87
4.3.2编辑JSP文件 92
4.3.3单元测试JSP文件 92
4.3.4调试JSP文件 92
4.4定制标签 93
4.5小结 101
4.6自测 101
4.6.1关键术语 101
4.6.2复习题 101
5.1会话bean和EJB体系结构 103
第5章EJB开发——会话bean和EJB 103
体系结构 103
5.1.1 EJB的体系结构 104
5.1.2会话bean和它们的类型 107
5.2在J2EE体系结构中会话bean的作用 109
5.3在WebSphere中开发一个会话bean 111
5.3.1会话bean:bean类 113
5.3.2接口 116
5.33部署描述文件 119
5.4小结 120
5.5自测 120
5.5.1关键术语 120
5.5.2复习题 121
第6章用WebSphere Studio开发实体EJB 123
6.1实体bean 123
6.1.1 J2EE应用程序中实体bean的作用 123
6.1.2实体bean的生命周期 124
6.1.3实体bean的类型 125
6.2 bean管理持久性 126
6.2.1实体bean结构图 126
6.2.2 bean类 127
6.2.3主键类 131
6.2.4实体bean接口 132
6.2.5 home接口 132
6.2.6 finder 133
6.2.7对象接口 134
6.2.8本地和远程接口 134
6.2.9部署描述文件 135
6.3容器管理持久性 135
6.3.1 CMPbean类(主要的区别) 135
6.3.2 CMP的部署描述文件 141
6.4 WebSphere中实体bean的细节 142
6.4.1绑定 142
6.4.2扩展 142
6.5用EJB查询语言查找CMPbean 143
6.5.1 EJBQL语法 143
6.6.1关系类型 144
6.5.2编写finder和select 144
6.6实体bean之间的关系 144
6.6.2创建和定义关系 145
6.7小结 148
6.8自测 148
6.8.1关键术语 148
6.8.2复习题 149
第7章消息驱动bean 151
7.1 JMS入门 151
7.1.1消息传递 151
7.1.2目的地 152
7.2消息驱动bean的开发 155
7.1.3什么是消息 155
7.2.1 bean类 156
7.2.2部署描述文件 157
7.3小结 159
7.4自测 159
7.4.1关键术语 159
7.4.2复习题 160
第8章事务 161
8.1简介 161
8.2事务的属性 162
83事务的类型 162
8.4 WebSphere应用服务器中的事务支持 163
8.3.2嵌套事务 163
8.3.1简单事务 163
8.4.1 OTS/XA事务体系结构 164
8.4.2 Java事务服务 164
8.4.3 Java事务API 164
8.4.4 iavax.transaction.UserTransaction接口 166
8.4.5两阶段提交 166
8.4.6在Web组件中的事务 166
8.4.7企业bean中的事务 167
8.4.8事务属性 169
8.4.9客户端应用程序的事务 172
8.5事务隔离 173
8.5.1并发问题 174
8.5.2隔离级 175
8.5.3并发控制 178
8.5.4存取意向 179
8.6存取意向策略 181
8.7在EJB中使用事务的最佳实践经验 182
8.7.1容器管理的事务划分与bean 184
管理的事务划分 184
8.7.2在会话bean中封装事务 184
8.7.3正确地使用存取意向 185
8.7.4在事务上实施时间限制 186
8.8小结 186
8.9.2复习题 187
8.9.1关键术语 187
8.9自测 187
第9章安全 189
9.1简介 190
9.2安全性基础 190
9.2.1验证 190
9.2.2授权 191
9.2.3密码学 192
9.2.4安全套接字层 194
9.3 J2EE应用程序安全 194
9.4 Web模块的说明性的安全性 196
9.4.1定义验证方法 196
9.4.2定义安全角色 197
9.4.3定义安全约束 198
9.4.4为各个servlet/JSP定义安全 199
角色引用(可选) 199
9.5 EJB模块的说明性的安全性 200
9.5.1定义安全角色 201
9.5.2指派方法许可 202
9.5.3为未保护的方法指派角色 203
9.5.4管理委托策略 203
9.5.5 bean级委托 203
9.5.6方法级委托 204
9.5.7定义安全角色引用(可选) 205
9.7可编程的安全性 206
9.6应用程序的说明性的安全性 206
9.7.1 EJB的J2EE安全API 207
9.7.2 servlet/JSP的J2EE安全API 207
9.8 WebSphere安全 208
9.8.1可扩展的安全体系结构模型 208
9.8.2用户注册表 208
9.8.3验证机制 210
9.8.4授权机制 210
9.9配置WebSphere安全性 211
9.9.1启用WebSphere全局安全性 211
9.9.2配置用户注册表 211
9.9.3设置一个验证机制 213
9.9.4设置JAAS 214
9.9.5配置网络安全:安全套接字层 215
9.10小结 216
9.11自测 217
9.11.1关键术语 217
9.11.2复习题 217
第10章JCA工具和支持软件 219
10.1 J2EE连接器体系结构概述 220
10.1.1 J2EE连接器体系结构的组成 221
10.1.2公共客户接口(CCI) 222
10.1.3事务相关的定义 222
10.2.1连接管理约定 223
10.2连接管理 223
10.2.2应用程序编程模型 225
10.2.3在Application Developer中添加资源适配器 225
10.2.4在Application Developer中配置连接工厂 227
10.2.5在Application Developer中配置连接工厂资源引用 227
10.3事务管理 227
10.3.1概述 227
10.3.2事务管理方案 228
10.3.3开发事务性应用程序 230
10.4安全性体系结构 230
10.4.2 EIS的登录 231
10.4.1安全管理约定 231
10.5公共客户接口 232
10.5.1连接接口 233
10.5.2交互接口 234
10.5.3数据表示接口 235
10.6小结 235
10.7自测 236
10.7.1关键术语 236
10.7.2复习题 236
第11章WebSphereStudio中的Profiling 237
分析工具 237
11.1 Profiling的背景知识和概念 237
11.1.1应用程序Profiling的目标 237
11.1.2体系结构 239
11.2.1 Profiling监视器视图 243
11.2 Profiling透视图 243
11.2.2图形化Profiling视图 252
11.2.3顺序图Profiling工具 260
11.2.4 Profiling首选项 263
11.3 Profiling设置过程 264
11.3.1设置Profiling过滤器 264
11.3.2 Profiling WebSphere应用程序 267
11.4 Profiling分析过程 279
11.6.1关键术语 282
11.6.2复习题 282
11.6自测 282
11.5小结 282
第12章客户端的实现 283
12.1 J2EE组件和容器 283
12.1.1 J2EE组件 284
12.1.2服务配置 286
12.1.3 JRE配置 287
12.2 J2EE企业容器客户端 287
12.2.1连接到会话EJB和实体EJB的 287
客户端 287
12.2.2消息驱动的EJB客户端 297
12.2.3客户端事务 309
12.2.4 Access bean 310
12.4 J2EE Application Client容器客户端 314
12.3 J2EE Web容器客户端 314
12.4.1使用JMS访问 315
12.4.2使用ORB访问 316
12.5可用的客户端模型 318
12.6 Web服务客户端 319
12.6.1 SOAP RPC客户端 319
12.6.2 SOAP Document Exchange客户端 322
12.6.3 Web服务客户端代理 325
12.7最佳实践经验 327
12.7.1隔离数据 328
12.7.2集中控制 328
12.7.3委托 329
12.7.4维护状态 330
12.7.5避免唠叨 331
12.8小结 332
12.9自测 332
12.9.1关键术语 332
12.9.2复习题 332
第13章打包和部署 335
13.1命名 336
13.2部署描述文件 336
13.3引用 337
13.3.1环境条目 337
13.3.2资源管理器连接工厂引用 339
13.3.3资源环境引用 340
13.3.4EJB引用 343
13.3.5安全角色引用 346
13.4安全 347
13.4.1验证和角色 348
13.4.2授权和访问控制 351
13.5打包 353
13.6安装 360
13.7小结 362
13.8自测 363
13.8.1关键术语 363
13.8.2复习题 365
14.1性能调节工具 367
第14章WebSphere管理 367
14.1.1生产者 368
14.1.2收集器 370
14.2评估Java虚拟机的运行状况 374
14.3评估WebSphere网络的状况 376
14.3.1 WebSphere排队网络 377
14.3.2生成处理能力曲线图 378
14.3.3设置处理能力曲线的初始队列长度 378
14.3.4装配负载 380
14.3.5获得度量值 381
14.4连接池(针对开发人员) 387
14.5连接池(针对管理员) 388
14.5.1设置数据源 389
14.5.2共享和非共享数据源(J2EE 1.3) 391
14.5.3数据源调节参数 394
14.6可提高性能的其他参数的设置和 397
体系结构的决策 397
14.6.1针对EJB 397
14.6.2针对Web容器 398
14.7会话管理 401
14.7.1持久性 401
14.7.2会话关系 402
14.7.3排队和成簇 403
14.7.4调节簇集 404
14.8类加载器的重要性 405
14.9跟踪 408
14.9.1跟踪串 411
14.9.2跟踪日志 412
14.10小结 412
14.11自测 412
14.11.1关键术语 412
14.11.2复习题 413
第15章WebSphere Studio中的远程调试器和Java组件测试工具 415
15.1远程调试背景 415
15.2 WebSphere应用服务器调试过程 416
15.2.1设置WebSphere应用服务器使得其在调试模式下运行 416
15.2.2将Application Developer调试器挂接到远程WebSphere应用服务器 417
15.3组件测试的背景和概念 419
15.4组件测试透视图 419
15.4.1定义视图 420
15.4.2执行视图 420
15.4.3主机编辑器 420
15.4.4测试用例编辑器 421
15.4.5测试用例实例编辑器 421
15.4.6轮廓视图 421
15.4.7准备运行向导 421
15.5 Java组件测试过程 421
15.5.1向工程定义并添加主机 421
15.5.2创建Java测试用例 422
15.5.3添加块 424
15.5.4添加Java任务 424
15.5.5添加Java验证点 425
15.5.6添加延迟 425
15.5.7添加测试用例引用 425
15.5.8 Java测试用例的准备和运行 426
15.6小结 428
15.7自测 428
15.7.1关键术语 428
15.7.2复习题 428
附录A光盘说明 429
附录B每章自测题与解答 435