全书共分为4个部分。
**部分对EJB编程基础知识进行介绍。因此,它概要性地对EJB进行了阐述。无论是EJB初学者,还是**EJB专家,这部分内容都值得阅读。其中包括的章节如下。
第1章是企业计算概述。本章将探讨基于组件的软件,分布式计算框架,应用服务器级软件,面向服务架构和容器;另外,还将介绍EJB和Java EE方面的知识。
第2章为第3章介绍革命性的EJB 3.0埋下伏笔。整个Java EE领域都在强烈要求简化EJB技术的编程和部署模型,而EJB 3.0做到了。通过阅读本章内容,能够加深***对传统EJB(EJB 1.x和EJB 2.x)的认识,从而为EJB 3.0引入的变化做好准备。
第3章成功开发了一个简单的EJB 3.0组件——HelloWorld;与此同时,还介绍了EJB基础技术,比如IIOP、位置透明性、JNDI命名服务、注释、部署描述符等。
第二部分**关注EJB编程的具体内容和过程。它向***展示了如何使用会话Bean、将会话Bean发布为Web服务、消息驱动Bean。更有趣的是,本部分研究了新的Java持久化API和POJO实体。在整个过程中,本书结合大量的实例代码对上述内容进行阐述。
第4章介绍会话Bean。本章将研究有状态和无状态会话Bean之间的区别、如何开发会话Bean、会话Bean的工作机理。
第5章**研究如何使用EJB模型实现Web服务。本章特别展示了如何将无状态会话Bean发布为Web服务。
第6章介绍Java持久化API。这是由EJB 3.0专家组制定的一项JCP规范(http://www.jcp.org)。JPA采用的开发和部署机制使得POJO实体能够替代原先的实体Bean,这在很大程度上降低了EJB 3.0技术的复杂度。本章还将介绍O/R Mapping的基础知识,实体(Entity)概念也在本章的介绍范围中。
第7章专门针对消息驱动Bean进行了全方位的介绍。一开始,本章回顾了面向消息的中间件(Message-Oriented Middleware,MOM)和Java消息服务的一些知识。在基于Java的MOM软件中,JMS的地位是不言而喻的,实际上,JMS是消息驱动Bean的一种支撑技术。随后,本章针对开发面向消息的EJB应用展开了多方面的讨论,并给出了大量的研究实例。
第8章讨论EJB技术中其他有意思的内容。比如,如何借助于JNDI命名服务访问资源,如何协同使用EJB和注释等;*后,还针对EJB 3.0新特性给出了相应的研究内容,比如依赖注入机制、拦截器。
第三部分是本书*令人兴奋的一部分内容,专注于**EJB专题。其包括的章节如下。
第9章针对**持久化实体概念进行了全面的讨论。主要涉及的讨论有继承、多态、实体关系、改进的EJB-QL。通过阅读本章内容,***能够对持久化实体有更深入的认识,从而指导他们的实际工作。
第10章专注于事务。在构建事务性EJB应用中,事务的使用占据了尤为重要的地位。事务具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持续性(Durability)等特点。本章首先从事务的概念入手,然后介绍如何在EJB中使用事务;本章还针对Java事务API(Java Transaction API,JTA)给出了大量的研究内容。
第11章深入研究了EJB涉及到的**性。**包括的内容有Java认证和授权服务(Java Authentication and Authorization Service,JAAS)、**性的互操作、Web服务的**性。
第12章针对EJB Timer服务(用于任务调度)给出了介绍。EJB定时器服务能够在指定的时间点自动执行相应的任务(比如,某EJB方法)。
第13章介绍了在EJB应用中如何选用各种Web应用框架,模型驱动开发(Model-Driven Development,MDD)工具等;另外,还研究了EJB设计、开发及测试中的*佳实践。
第14章为设计和部署高性能的EJB应用给出了大量的技巧。很多设计策略都在本章进行了研究,比如如何在有状态和无状态会话Bean间选型、如何在本地和远程接口间选型等;另外,本章还为各种类型的EJB组件和基于JPA的实体提供了大量的性能调优技巧。
第15章深入剖析与EJB技术平台相关的企业应用集成问题。本章对各种可用的集成方式都做了认真细致的分析,并且讨论了用于集成EJB组件技术的各种技术。当然,Java EE连接器架构是用于集成后端企业应用的主要利器。本章除了介绍Java EE连接器架构外,还结合实例深入讨论了如何开发连接器。
第16章研究大型EJB系统中的群集技术。***将体会到群集技术的工作机理,而且能够深入到具体EJB容器实现群集的策略中。如果***需要在多台协作的机器间构建系统,则建议认真阅读本章内容。
第17章构建了一个实际Java EE系统,其中使用到EJB组件技术。***将领略到EJB同Java EE含有的其他技术栈的协同使用,比如,如何在EJB组件中使用持久化实体,如何使用Java Servlet和JSP技术连接到EJB组件;与此同时,本章还演示了如何使用UML设计EJB对象模型。
附录收集了与EJB组件技术相关的其他内容。当然,有些***可能经常要翻阅这部分内容,但其他的***未必。
附录A阐述基于Internet ORB间协议的Java远程方法调用(RMI-IIOP)、Java命名和目录接口(Java Naming and Directory Interface,JNDI)。在使用EJB技术前,***务必掌握它们。如果***刚接触EJB,则请先阅读这部分内容。
附录B讨论Java平台新引入的注释(Annotation)。EJB 3.0规范支持的各种注释都给出了阐述,***在编写EJB代码时可以时常翻阅这部分内容。