J2EE平台和EJB构架为基于Web的企业应用提供了高级支持。本书深入剖析了J2EE平台的核心:EJB构架,说明了如何用最新的EJB组件构架开发和部署企业应用程序。全书以两个企业应用程序的开发过程为主线,从应用程序开发者的角度阐述了会话bean、消息驱动bean和实体bean,以及EJB构架对Web服务、事务和安全性的支持。本书适合企业应用程序开发者和计算机科学专业肢高年级本科生和研究生使用本书现在推出第2版,深入剖析了EnterpriseJavaBeans(EJB)2.1构架,说明了如何用最新的EJB组件构架开发和部署企业应用程序。第2版讨论了EJB2.0和2.1构架的新特征,包括消息驱动bean和异步通信、增强的容器管理的持久性、Web服务支持以及EJB查询语言(EJBQueryLanguage,EJBQL)。本书是SunMicrosystems公司成功推行的Java蓝图(JavaBluePrints)程序的一部分,介绍Java2平台企业版(Java2Platform,EnterpriseEdWin)。Java蓝图程序已经被数千名应用程序设计师、开发者和学生采用,以便更好地理解J2EE平台固有的编程模型。本书和Java蓝图程序不提供如何使用各种Java技术编写应用程序的资料一一对此可以参考相关的《Java语言导学》(JavaTutorial)。Java蓝图主要考虑应用程序构架的指导方针。本书读者应该熟悉Java编程语言,应该有J2EE平台的基本知识,而且多少应该使用过企业bean和EJB构架。尽管我们简要地介绍了EJB构架的基础知识,但是本书的目的不是作为那些刚刚接触企业bean的开发者的教程。相反,本书针对信息技术(informationtech-nology,)人员实现内部应用程序,以及独立软件开发商(independentsoftwarevendor,ISV)开发销售给企业的一般应用程序,深入剖析了E3B2.0和2.1构架。EJB构架主要按以下几方面定义企业应用程序的组件模型:如何按组件集的方式设计应用程序;组件与组件之间如何交互;组件与它们的EJB容器如何交互。EJB构架以契约的方式定义这些交互,使应用程序能够使用不同来源的组件。因为EJB组件必须遵循这些契约,所以构成一个应用程序的软件组件可以来自多个开发商。EJB应用程序主要从容器开发商的角度定义构架契约。相反,本书从应用程序开发者(即开发EJB应用程序的人)的角度介绍EJB构架。本书以详细描述两个企业应用程序的开发过程为主线。尽管示例程序比较简单,但是足以说明企业应用程序开发中遇到的许多典型问题。我们用这些例子说明EJB构架如何帮助开发者解决这些问题。第1个例子是由一个IT部门内部开发的福利注册(benefitenrollment)应用程序。该应用程序很好地说明了会话bean的工作原理,以及开发者如何使用会话bean。第2个例子把第1个例子的福利应用程序转变成由一个ISV开发的应用程序。ISV的设计目标不同于那些内部汀部门。ISV在设计应用程序时必须考虑到可以把它容易地部署到许多不同的客户操作环境中。因为每个客户都有一个独特的操作环境,所以ISV必须应对许多难题。此外,ISV通常需要设计应用程序,使客户或者集成人员能够扩展它。我们说明了实体bean如何帮助ISV克服这些难题。EJB2.1构架使我们能够以Web服务的形式实现应用程序。本书增加了这一部分内容,用一章内容阐述了如何在Web服务中结合使用企业bean。这些例子都加了注解,说明了在企业应用程序开发中通过EJB构架解决特定问题的技巧。此外,我们还描述了EJB构架的各种特征,讨论了在应用程序中使用它们的时机以及如何使用它们。尽管一般的应用程序开发者不需要知道EJB容器的工作原理,但是我们还是介绍了一些EJB容器的内部机理。之所以介绍这些内容,是为了让读者明白容器替应用程序做了多少工作。