书籍详情

精通EJB3.0/精通系列

精通EJB3.0/精通系列

作者:(美)斯瑞格奈斯

出版社:电子工业出版社

出版时间:2006-12-01

ISBN:9787121032721

定价:¥59.00

购买这本书可以去
内容简介
  本书是关于EJB 3.0的专业技术教程,专注于EJB的概念、方法、开发过程的介绍。同时,本书还研究许多高端的EJB知识,使得开发者能够真正理解和掌握EJB,实践出真知。通过阅读此书,开发者将精通EJB。全书共分为4个部分:第一部分对EJB编程基础进行介绍,概要性地对EJB进行了阐述;第二部分重点关注EJB编程的具体内容和过程,向开发者展示了如何使用会话Bean、将会话Bean发布为Web服务、消息驱动Bean;第三部分专注于高级EJB专题;第四部分是附录,收集了EJB组件技术相关的其他内容。本书适合作为Java程序员、网站开发人员和系统分析员的参考书。
作者简介
  罗时飞,独立JavaEE顾问。西安交通大学硕士。从事JavaEE开发、架构工作7年多 ,曾担任大型软件公司产品开发经理,实践经验丰富。对JavaEE平台、敏捷方法及开源技术有深入研究。出版图书多本。现在,他专职从事企业级Java的推广工作。服务网站:http://www.open-v.com.代表作品:《精通Spring》(简、繁体,第1版,编著)、《Mastering Enterprise JavaBeans》(第3版,译)、《Jboss Administration and Development》(第3版,译)、《The J2EE Tutorial》(第1版,合译)。
目录
第1篇  总    述
第1章  概述    3
1.1  EJB前奏    4
1.1.1  软件组件    4
1.1.2  呼唤组件化    4
1.2  分布式应用的中间件需求    5
1.2.1  应用服务器级软件    7
1.2.2  标准化组件框架    7
1.3  企业Bean技术    8
1.3.1  钟情Java    9
1.3.2  业务层组件—EJB    10
1.3.3  分布式计算:EJB的
支撑    11
1.3.4  EJB中间件服务    13
1.3.5  EJB应用生命周期
中的角色    14
1.3.6  EJB生态圈    17
1.4  面向服务架构及EJB    19
1.5  终极无间—可重用服务    20
1.6  Java EE 5.0    22
1.7  小结    26
第2章  传统的EJB    27
2.1  传统EJB组件的具体构成    27
2.2  开发与部署传统EJB组件    29
2.2.1  远程接口    31
2.2.2  本地接口    31
2.2.3  Home接口    32
2.2.4  本地Home接口    33
2.2.5  Bean类    34
2.2.6  部署描述符    35
2.2.7  部署企业Bean组件    35
2.2.8  HelloWorldEJB客户    36
2.3  剖析EJB 2.x    38
2.3.1  复杂性—EJB 2.x的
突出问题    38
2.3.2  如何改进EJB 2.x    41
2.4  小结    42
第3章  新一代EJB    43
3.1  介绍EJB 3.0    43
3.1.1  EJB容器    44
3.1.2  EJB组件类型    46
3.1.3  EJB使用的RMI-IIOP    48
3.1.4  EJB与位置透明性    49
3.1.5  EJB环境    50
3.1.6  剖析EJB 3.0    51
3.1.7  Home与对象
接口的作用    54
3.2  简化的EJB 3.0 API    55
3.2.1  消除Home与
对象接口    55
3.2.2  消除组件接口    55
3.2.3  使用注释    56
3.2.4  简化对环境的访问    59
3.3  打包并部署EJB 3.0组件    60
3.4  EJB 3.0组件实例    61
3.4.1  业务接口    62
3.4.2  Bean类    62
3.4.3  部署描述符    63
3.4.4  EJB客户    63
3.5  术语集合    64
3.6  小结    65
第2篇  EJB组件和实体
第4章  会话Bean介绍    69
4.1  会话Bean的生命周期    69
4.2  会话Bean的子类型    70
4.2.1  无状态会话Bean    70
4.2.2  有状态会话Bean    71
4.3  有状态会话Bean的不同点    72
4.3.1  实现实例池功能    72
4.3.2  维护会话状态的规则    73
4.3.3  激活和挂起回调    74
4.3.4  回调方法小结    77
4.3.5  一个简单的有状态
会话Bean组件    77
4.3.6  会话Bean的生命周期
流程图    86
4.4  小结    89
第5章  将会话Bean发布
为Web服务    91
5.1  Web服务概念    91
5.1.1  Web服务标准    93
5.1.2  XML文档和平台
无关性    96
5.2  实现Web服务    97
5.2.1  WSDL和XML/Java映射    99
5.2.2  打包和部署暴露Web服务的会话Bean    100
5.3  实现Web服务客户    101
5.4  小结    102
第6章  Java持久化API    103
6.1  对象关系映射    104
6.2  何为实体    106
6.2.1  实体与会话Bean    107
6.2.2  持久化提供者    107
6.2.3  实体类    108
6.2.4  访问持久化上下文中
的实体    110
6.2.5  打包和部署实体类    114
6.3  EntityManager API    115
6.3.1  实体的生命周期    116
6.3.2  数据库同步    119
6.4  小结    125
第7章  消息驱动Bean介绍    127
7.1  使用消息的动机    127
7.2  Java消息服务    129
7.2.1  消息域    130
7.2.2  JMS API    131
7.3  集成JMS和EJB    134
7.4  开发消息驱动Bean    138
7.4.1  语义    138
7.4.2  一个简单实例    140
7.5  高级概念    145
7.5.1  事务    145
7.5.2  安全性    145
7.5.3  负载均衡    145
7.5.4  群集中消息的
重复消费    146
7.6  基于JMS的消息
驱动Bean陷阱    147
7.6.1  消息顺序    148
7.6.2  错过调用
@PreDestroy    148
7.6.3  坏消息    148
7.6.4  如何将结果返回给消息生产者    151
7.6.5  异步方法调用    154
7.7  小结    155
第8章  扩充EJB组件的功能    157
8.1  从EJB组件调用其他
EJB组件    157
8.2  Annotation    159
8.2.1  公用注释    159
8.2.2  业务接口注释    160
8.2.3  用于有状态会话
Bean的注释    161
8.2.4  依赖注入    164
8.2.5  拦截器    167
8.3  小结    172
第3篇  高级EJB概念
第9章  高级持久化概念    175
9.1  继承    176
9.1.1  各类继承结构
使用单个表    179
9.1.2  各子类使用
单独的表    184
9.1.3  各具体实体类
使用单个表    186
9.1.4  其他继承模式    186
9.2  多态    188
9.3  关系    190
9.3.1  关系类型    190
9.3.2  1:1关系    191
9.3.3  1:N关系    196
9.3.4  M:N关系    204
9.4  改进的EJB-QL    210
9.4.1  批量更新和删除    211
9.4.2  连接操作    214
9.4.3  GROUP BY和
HAVING从句    214
9.4.4  投影    215
9.4.5  高级查询操作    216
9.4.6  在SELECT从句中
构造对象    217
9.5  小结    218
第10章  事务    219
10.1  使用事务的动机    219
10.1.1  原子操作    220
10.1.2  网络或机器故障    221
10.1.3  多用户共享数据    221
10.2  事务带来的优势    222
10.3  事务模型    224
10.3.1  平面事务    225
10.3.2  嵌入式事务    226
10.3.3  其他事务模型    227
10.4  分布式事务    227
10.4.1  持久性和2PC
协议    228
10.4.2  事务通信协议和
事务上下文    229
10.5  Java事务服务和
Java事务API    230
10.5.1  OTS和Java
事务服务    230
10.5.2  Java事务API    230
10.5.3  JTS和跨应用服务器的
分布式事务互操作    231
10.6  EJB事务    232
10.6.1  底层事务系统抽象    232
10.6.2  容器管理、Bean管理
及客户控制的事务    232
10.6.3  选择事务风格    235
10.7  容器管理事务    236
10.7.1  EJB事务属性的
取值    236
10.7.2  容器管理事务实例    239
10.7.3  应用事务属性到各种
EJB组件中    241
10.8  Bean管理事务    243
10.8.1  javax.transaction.
UserTransaction
接口    243
10.8.2  Bean管理事务实例    245
10.9  客户控制的事务    246
10.10  事务隔离    247
10.10.1  并发控制的
必要性    247
10.10.2  隔离级别    248
10.10.3  脏读问题    249
10.10.4  不可重复读和
可重复度    250
10.10.5  幻影读问题    251
10.10.6  事务隔离小结    251
10.10.7  在EJB应用中使用
各种隔离级别    251
10.10.8  悲观和乐观
并发控制    252
10.11  设计EJB中的事务会话    253
10.12  小结    255
第11章  安全性    257
11.1  介绍    257
11.1.1  侵害、弱点和风险    258
11.1.2  控制    259
11.2  Web应用的安全性    260
11.2.1  Web应用的认证    261
11.2.2  授权    262
11.2.3  机密性和集成性    263
11.3  理解EJB安全性    263
11.3.1  EJB应用的认证    263
11.3.2  EJB中的授权    273
11.3.3  安全性传播    283
11.4  安全性互操作    284
11.4.1  基于SSL的IIOP    284
11.4.2  CSIv2    285
11.5  Web服务中的安全性    286
11.5.1  端对端的安全性    287
11.5.2  XML数字签名和
XML加密    288
11.5.3  SAML    290
11.5.4  WS-Security    291
11.6  小结    293
第12章  EJB定时器    295
12.1  任务调度    295
12.2  EJB和任务调度    296
12.3  EJB定时器服务    297
12.3.1  定时器服务API    297
12.3.2  EJB同定时器服务的
交互    300
12.4  定时器实例——
CleanDayLimitOrdersBean    301
12.4.1  CleanDayLimitOrders
业务接口    301
12.4.2  CleanDayLimitOrdersBean
类    302
12.4.3  CleanDayLimitOrders
EJB的部署描述符    304
12.4.4  CleanDayLimitOrders
EJB的客户    305
12.4.5  运行客户    305
12.5  EJB定时器服务的优缺点    306
12.6  小结    307
第13章  EJB最佳实践    309
13.1  何时使用EJB    309
13.2  如何选用同EJB协同
工作的Web应用框架    311
13.3  在EJB项目中实施MDD    313
13.4  在EJB项目中实施
极限编程    314
13.5  测试EJB    316
13.5.1  EJB单元测试    316
13.5.2  借助于框架完成
EJB的单元测试    317
13.6  如何在EJB中实现客户端
回调功能    319
13.6.1  JMS    319
13.6.2  远程对象调用    319
13.6.3  Web服务    320
13.7  选用Servlet或无状态会话
Bean作为服务端点    320
13.8  在EJB项目中考虑使用
AOP技术    321
13.8.1  AOP    321
13.8.2  何时在EJB应用中
使用AOP    321
13.9  反射、动态代理和EJB    322
13.10  将EJB部署到不同Java EE
应用服务器    323
13.11  调试EJB    324
13.12  EJB中的继承和
代码复用    326
13.13  在EJB中实现单例
(Singleton)    327
13.14  何时在EJB中
使用XML    327
13.15  选择消息或RMI-IIOP的
时机    328
13.16  小结    330
第14章  EJB性能调优    331
14.1  提前关注    331
14.2  从性能角度看待:有状态
对无状态    332
14.3  如何借助于容量规划
来保证响应时间    334
14.4  使用会话外观改善性能    335
14.5  选择本地接口还是
远程接口    336
14.6  区分资源    337
14.7  无状态会话Bean调优    338
14.8  有状态会话Bean调优    339
14.9  实体调优    340
14.10  MDB调优    342
14.11  Java虚拟机调优    343
14.12  其他调优技巧    344
14.13  正确选用EJB服务器    345
14.14  小结    346
第15章  EJB集成    347
15.1  研究集成的必要性    347
15.2  EJB和集成    348
15.3  Java EE连接器架构    349
15.3.1  引入Java EE连接器
的理由    349
15.3.2  资源适配器同Java EE
组件交互    351
15.3.3  资源适配器同应用
服务器交互    352
15.4  Java EE连接器API    354
15.4.1  javax.resource包    354
15.4.2  javax.resource.cci包    354
15.4.3  javax.resource.spi包    356
15.4.4  javax.resource.spi.
endpoint包    358
15.4.5  javax.resource.spi.
security包    358
15.4.6  javax.resource.spi.
work包    359
15.5  系统契约    359
15.5.1  生命周期管理    359
15.5.2  连接管理    360
15.5.3  安全性管理    363
15.5.4  事务管理    365
15.5.5  工作管理    368
15.5.6  外来消息管理    369
15.6  连接器实例:
OutboundLoanRA    371
15.6.1  实例架构    371
15.6.2  JavaLoanApp.java    372
15.6.3  LoadApp.dll    373
15.6.4  OutboundLoanRA    374
15.6.5  LoanRatesEJB    396
15.6.6  LoanRatesClient    398
15.6.7  运行客户    398
15.6.8  扩展
OutboundLoanRA    403
15.7  集成最佳实践:使用
合适的技术    404
15.7.1  何时使用JMS和基于
JMS的MDB    404
15.7.2  何时使用Java EE
连接器    404
15.7.3  何时使用Java Web
服务    404
15.8  小结    405
第16章  群集    407
16.1  大型系统概述    407
16.1.1  何为大型系统    408
16.1.2  负载均衡和容错    410
16.1.3  基于并排或分布式Java
EE容器实施群集    413
16.2  装备群集EJB    415
16.2.1  如何群集EJB    415
16.2.2  幂等性概念    416
16.2.3  群集无状态会话
Bean    417
16.2.4  群集有状态会话
Bean    419
16.2.5  群集实体    420
16.2.6  群集MDB    422
16.3  其他EJB群集问题    423
16.3.1  初次接触    423
16.3.2  初始访问逻辑    424
16.4  小结    424
第17章  EJB-Java EE集成
—构建完整的应用    425
17.1  业务问题    425
17.2  预览最终网站    426
17.3  圈定技术需求    429
17.3.1  业务逻辑层    430
17.3.2  前端展示层    435
17.4  实例代码    440
17.5  小结    450
附录A  RMI-IIOP和JNDI教程    451
A.1  Java RMI-IIOP    451
A.1.1  远程方法调用    452
A.1.2  远程接口    454
A.1.3  远程对象实现    455
A.1.4  存根和骨架    456
A.2  对象序列化和参数传递    457
A.2.1  传值    457
A.2.2  CORBA与RMI-IIOP
的互操作    462
A.3  Java命名和目录接口    463
A.3.1  为什么要使用JNDI    464
A.3.2  命名和目录服务    464
A.3.3  命名和目录存在的
问题    466
A.3.4  进入JNDI    466
A.3.5  JNDI的优势    466
A.3.6  JNDI架构    467
A.3.7  JNDI概念    468
A.3.8  JNDI编程    471
A.4  集成RMI-IIOP和JNDI    472
A.4.1  将RMI-IIOP服务器
绑定到JNDI    473
A.4.2  借助于JNDI查找
RMI-IIOP服务器    474
A.5  小结    475
附录B  注释    477
B.1  Annotation介绍    477
B.1.1  用于EJB的注释    479
B.1.2  背景    480
B.2  EJB注释参考    482
B.2.1  用于EJB组件类型的
注释    482
B.2.2  用于会话Bean和
消息驱动Bean的
公共注释    484
B.2.3  用于实体的注释    487
B.3  小结    500
猜您喜欢

读书导航