您所在的位置: 首页>>读书频道>>考试认证>>Java>>

4.1 会话Bean的生命周期

http://book.51cto.com  2007-04-25 17:14  斯瑞格奈斯/罗时飞编译  电子工业出版社  我要评论(0)
  • 摘要:会话Bean能够完成客户所要求的业务操作,它是含有业务逻辑的可重用组件,并能够用于业务过程。比如,会话Bean能够完成查价、订单登记、视频压缩、银行事务、股票交易、数据库操作、复杂计算等。开始深入研究会话Bean的各个特性吧!其后,本章将开发一个有状态会话Bean组件实例。
  • 标签:Bean  生命周期  EJB  精通EJB 3.0

会话Bean同其他企业Bean类型的最主要的区别是生命周期的差异性。相比之下,会话Bean实例是存活短暂的对象。粗略地看,它同会话(Session)或调用其客户的生命周期类似,而且,会话Bean实例并不能够在多客户间共享,而且它不表示数据库中的数据。

比如,如果客户代码调用用于完成订单登记的会话Bean,则EJB容器需要完成会话Bean组件实例的创建。在后续操作中,如果客户不再与该实例交互,应用服务器有可能会销毁它。从客户视图看待,Bean实例开始于客户获得其引用时,而终止于客户会话的终结。在客户会话开始前或终止后的时间里面,Bean实例是否存在真的是未知数。

在客户将浏览器打开后,并在客户关闭它之前,这段时间可能构成了客户会话的持续期。期间,客户有可能连接到已部署了会话Bean的电子商务网站上。当然,客户会话的持续期也有可能是Java Applet运行期间、单独Java应用的打开时间、访问某企业Bean实例的其他企业Bean实例的存活时间等。

通常,客户会话(Client Session)的持续期决定了使用中的会话Bean的存活期,这就是术语“会话Bean”的来源。EJB容器管理了EJB组件的生命周期,如果客户超时,EJB容器将销毁会话Bean实例。如果客户使用某会话Bean实例持续了10分钟,则该会话Bean实例有可能存活几分钟或几小时,但是,不会是几周、几个月或者几年时间。而且,一旦应用服务器(或者运行它的机器)瘫痪,会话Bean实例也应该不复存在。因为,会话Bean仅仅是内存对象,一旦其生存的周边环境遭到破坏,会话Bean也将不复存在。

相比之下,由于实体Bean是持久化对象,因此实体Bean能够存活数月或者数年。实体Bean是永久性存储源(比如,RDBMS)的组成部分。借助于RDBMS能够在内存中构建实体Bean,并且它能够存活很长时间。

会话Bean并不是持久化的,因此,会话Bean并不会保存到持久化存储源中,这同实体Bean不一样。请注意,会话Bean能够操作RDBMS,但是其本身并不是持久化对象。

【责任编辑:火凤凰 TEL:(010)68476606-8007】

回书目   上一节   下一节
上一篇: 下一篇: 4.2.1 无状态会话Bean
NetBeans开发工具应用专题
EJB应用开发专栏
深入Vista应用程序开发
Ruby on Rails 社区网站开发
ASP.NET从入门到精通
 
 验证码: (点击刷新验证码)   匿名发表
  • Visual C++ 完全自学宝典

  • 作者:强锋科技,朱洪波
  • Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0..
Copyright©2005-2008 51CTO.COM 版权所有