`
lw223
  • 浏览: 97999 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

精通EJB学习笔记(会话bean的介绍)

    博客分类:
  • java
阅读更多

  

会话(sessionbean的介绍
会话bean能够完成客户所需要的业务操作。作为业务对象,会话bean能够实现业务逻辑,业务规则,算法,工作流等。比如会话bean能够完成查价,订单登记,食品压缩,银行事务,股票交易,数据库操作,复杂计算等。而且会话bean是可重用的组件,供操作业务流程中的逻辑使用。
会话bean的生命周期
会话bean不是持久化的,它仅仅是内存对象,会话bean不会保存到持久化存储源中,一旦其生存的周边环境遭到破坏,会话bean也将不复存在。通常客户会话的(Client Session)的持续其决定了使用的会话bean的存活期,如果客户超时EJB容器将销毁会话bean实例,会话bean实例是存活短暂的对象,并且会话bean实例不能够在多客户间共享。
会话bean的子类型
会话bean有两种子类型:有状态会话bean和无状态会话bean(区别上一篇中将过了)
有状态会话bean
实现实例池功能:EJB容器为了限制内存中运行的有状态会话bean实例的数量,EJB容器需要将有状态会话bean的会话状态保存到硬盘或者其它存储源中,该过程称之为挂起(Passivation)。在挂起有状态会话bean后,会话状态会被安全的保存下来,而且其释放的内存可以供其他应用(或EJB实例)使用。一旦被挂起的有状态会话bean实例的客户再次调用它,被挂起的会话状态将重新回到有状态的会话bean实例中,该过程称之为激活Activation)。现在有状态会话bean实例恢复了同原先客户的会话。但是激活的有状态会话bean实例不一定是服务于原先客户的那个实例,但并不影响使用。
EJB实例也具有有状态会话bean的实例池功能,在处理多个并发客户时,只需要在内存中存活若干个有状态会话bean实例。代价是挂起和激活过程将导致I/O性能瓶颈。维护无状态会话bean实例池是十分简单的,因为没有会话状态需要维护。无状态会话bean不存在挂起和激活操作,EJB容器可以随心所欲的销毁它。
EJB容器会挂起和激活哪个有状态会话bean实例? 这取决于EJB容器。
大部分容器使用最近最少使用(Least Recently Used LRU)策略,及简单的挂起最近没有使用到的有状态会话bean实例。如果有状态会话bean实例最近没有使用到,则EJB容器会挂起它,从而将会话状态保存到硬盘上。只要有状态会话bean实例没有参与到客户请求中,容器就能够随时挂起它。
为激活有状态会话bean实例,大部分EJB容器都会使用just-in-time算法,即只有在客户请求到来时,才会激活有状态会话bean实例。如果客户请求传到EJB容器中,而且容器已经挂起了该客户的会话状态,则容器马上激活它,从而将挂起状态信息写到内存中。
分享到:
评论

相关推荐

    JavaEE5学习笔记05-EJB之会话Bean总结

    JavaEE5学习笔记05-EJB之会话Bean总结...

    Jboss下开发ejb应用之一会话bean的应用

    NULL 博文链接:https://fruitking.iteye.com/blog/562868

    实战EJB之三 开发会话Bean(有状态会话Bean).doc

    实战EJB之三 开发会话Bean(有状态会话Bean).doc

    精通EJB3.0 中文版 3/3

    第二部分重点关注EJB编程的具体内容和过程,向开发者展示了如何使用会话Bean、将会话Bean发布为Web服务、消息驱动Bean;第三部分专注于高级EJB专题;第四部分是附录,收集了EJB组件技术相关的其他内容。

    精通EJB3.0 中文版 1/3

    第二部分重点关注EJB编程的具体内容和过程,向开发者展示了如何使用会话Bean、将会话Bean发布为Web服务、消息驱动Bean;第三部分专注于高级EJB专题;第四部分是附录,收集了EJB组件技术相关的其他内容。

    Eclipse+Jboss EJB技术 会话Bean

    广东工业大学Java EE Web编程技术课程实验,使用JBoss,实现EJB技术中的会话Bean,简单的Helloworld。

    EJB 会话BEAN PPT

    介绍EJB入门基础,详细介绍会话BEAN.

    精通EJB第三版

    第2篇重点关注EJB编程的具体内容和过程,其中,研究了如何开发如下三种EJB组件:会话Bean、实体Bean和消息驱动Bean。具体内容包括开发各种EJB组件的基础知识(结合开发实例)、组件生命周期的详细阐述;第3篇是本书最为令...

    EJB3 示例有状态和无状态会话bean

    EJB3示例 有状态和无状态会话bean,其中Test.jsp页面是用于测试远程无状态会话bean页面,可放到时其它web项目中访问,但于分布式测试。

    EJB3.0源代码,包含会话Bean,实体Bean,还有消息Bean

    EJB3.0的源代码,包含会话Bean,实体Bean,还有消息Bean

    精通EJB3.0 中文版 2/3

    第二部分重点关注EJB编程的具体内容和过程,向开发者展示了如何使用会话Bean、将会话Bean发布为Web服务、消息驱动Bean;第三部分专注于高级EJB专题;第四部分是附录,收集了EJB组件技术相关的其他内容。

    有状态会话Bean实验指导.doc

    试验目的:通过对简单会话Bean组件的编写,加深对EJB理论知识的理解,为更深层的EJB应用做准备。 试验任务:设计一个会话Bean,进行计数。将当前的计数值存储在Bean中,当客户端请求时,调用计数函数,进行计数累加...

    EJB3开发第一个无状态会话bean

    NULL 博文链接:https://diaochenlong2.iteye.com/blog/1846828

    ejb.zip_单身会话bean

    java ee 6 ejb的一些实例: 包括 有状态会话bean 无状态会话bean 单身会话bean 消息驱动bean 实例

    EJB 3.0无状态会话Bean应用

    该示例使用Eclipse 3.3 Europa IDE、JDK 6.0、GlassFish 2.0翻写的第一个EJB 3.0会话bean应用。注意:必须首先安装GlassFish服务器,可以通过安装NetBean 6.0(M9)来完成安装该服务器,或能单独安装也行,然后在...

    无状态会话Bean实验指导.doc

    试验目的:通过对简单无状态会话Bean组件的编写,加深对EJB理论知识的理解,为更深层的EJB应用做准备。 试验任务:根据EJB组件的结构体系和运行机理,编写实现显示“Hello,+班级+姓名!”的无状态会话Bean组件,并...

    使用JBoss 4.2书写EJB3.0无状态会话Bean + JPA + MySql 5.0的Hello World Java EE应用

    环境:Window XP profession, JDK 1.6, MySQL 5.0, JBoss...该示例使用EJB 3.0的无状态会话Bean呼叫JPA持久层完成数据库的操作,推荐广大企业级Java程序员项目中使用。 注意:连接池的配置参见上一个资源readme.txt文档

    Weblogic EJB 学习笔记

    Weblogic EJB 学习笔记 ejb 基础知识 EJB 组成 EJB 配置描述器 建立ejb 档案文件 容器管理的事务 ejb 引用

    JavaEE5学习笔记06-EJB之消息驱动Bean总结

    EJB之消息驱动Bean的总结。ejb 消息驱动Bean j2ee jms java

    基于Weblogic 的ejb 学习笔记

    (1) 无状态会话bean  不保存客户机的会话状态  优点:使用小量的实例即可满足大量的客户。每个实例都没有标识,相互之间是等价的。  等?的无状态会话bean: 多次和一次调用的结果和效应相同。  在...

Global site tag (gtag.js) - Google Analytics