文档说明:此文当中涉及到关键字、对象、等专用术语采取英文表达的方式。排版约定:标题均使用加粗斜体字;章标题使用二号字,距行首一个Tab距离;小节标题分别使用三、四、小四号字,位于行首;内容使用五号字,距行首一个Tab距离。翻译人员:丁会云dhy@slof.com,edward_javalover@hotmail.com(msn)马龙发malongfa@etang.com,malongfa@hotmail.com(msn)曾宪锐iceshape@etang.com,iceshape@hotmail.com(msn)吴君杰alabaobeimail@163.netJ2EE指南序:1993年8月,我加入了太阳公司——被称之为第一人的小公司。我之所以知道这个公司是因为我的一些同事跳槽到了太阳公司。我加入太阳公司的主要原因是因为我喜欢他卡通似的用户界面。太阳公司正在发展,其界面有一个昵称——Duke。“第一人”的首次样品演示名曰:七星(Star7),它是一个能让房主通过触摸屏来实现远程控制的产品。在我到哪儿的时候,他们正在为视频点播做演示。这个妙极的视频点播演示是由加利福尼亚的一个称之为巨大图片工作室做的。演示产品使用当时称之为Oak的编程语言做的。我的第一个任务就是帮助Oak语言的创造者——JamesGosling写语言规范。然而我真正想做的是对象为普通程序员的面向任务的文档。到了1994年7月,“第一人”陷入混乱,失去了向一些有线网络公司说明视频点播方案是消费者需求的说服力。面向Internet的编程1994年秋天我返回工作时,这个公司的景象已经完全改变。他们决定Oak语言——跨平台的、安全的、易传输的代码——时理想的面向Internet的语言。同时他们在制作名为WebRunner的浏览器,它具有在Internet上传输Oak代码——他们称之为Applet——的能力。我开始写一些指南来帮助程序员使用applets。1995年,当WebRunner浏览器首次出版时,指南只是包含浏览器的一小部分,这个指南就是J2EETutorial的前身。该指南时第一次包含applets的文档,看起来有点像TheJavaTutorial。事实上,TheJavaTutorial也许仍有些能在最初出版的指南中找到。由于没有HTML工具,因此不得不手工完成。告诉你,为文档做手工代码连接是无趣的,哪怕是一份小文档。这个编程语言的名称由Oak变为Java,浏览器的名称由WebRunner换为HotJavaMary的加盟1995年早些时候,我们招收了一个合同编制员——MaryCampione。她和我在后来的工作互助中相识。Mary的工作是帮助程序员使用平台特色如线程。我们很快意识到我们的工作如此相似,我们很快就在一起为Java平台程序员指南工作。1995年5月18日,MaryCampione和我出版了第一版指南,我们称之为TheJavaProgrammer’sGuide。它是一个不完全的草本,但它提供了为程序员在Java平台胜编程的一些信息。紧接着第二个星期,太阳公司正式在一个展示会上宣布了称之为SunWorld的Java平台。最棒的是NetScape同意在他们的浏览器上支持applets。在接下来的几个月里,Mary和我继续增加、校订《编程指南》,我们密切的一起工作。到了1995年底,第一批Java系列的书籍完成。这一系列书籍主要由原“第一人”的成员编写,Addison-Wesley出版。TheJ2EETutorial现在又出现了一个新的平台,新的指南。Java2企业版的成功是显著的。开发者们都强烈要求提供有关使用Java平台编写服务端应用程序的资料。同原来的指南一样,这是一个多实例、易使用的并作为J2EE平台开发的参考。目录准备工作...............................................................................................................................8第1章总括....................................................................................................9一.分布式得多层应用程序................................................................................9二.J2EE容器................................................................................................................11三.打包J2EE组件..................................................................................................12四.开发者角色............................................................................................................13五.本书所用的软件................................................................................................14第2章动手做一个EJB........................................................................17一.准备工作..................................................................................................................18二.创建J2EE应用程序......................................................................................19三.创建企业Bean....................................................................................................19四.创建J2EE应用程序客户端....................................................................22五.创建Web客户端..............................................................................................25六.设置企业Bean的JNDI名......................................................................27七.部署J2EE应用程序......................................................................................28八.运行J2EE应用程序客户端....................................................................29九.运行Web客户端..............................................................................................29十.修改J2EE应用程序......................................................................................30十一。常见问题和解决方法..............................................................................31第3章企业Bean.............................................................................................351,企业Bean概述......................................................................................................362,会话Bean...................................................................................................................363,EntityBean.......................................................................................................................384,Message-DrivenBean.......................................................................................405.定义客户端访问接口.......................................................................................426,企业Bean的“内容”...................................................................................457,企业Bean的命名约定...................................................................................468,企业Bean的生存周期...................................................................................46第4章有状态会话Bean示例..................................................511.购物车会话BeanCartEJB...........................................................................51二其他的企业Bean特性...................................................................................58第5章BMP的例子.....................................................................................62一.SavingsAccountEJB.........................................................................................62二.用deploytool部署