[原创]EJB的三种会话介绍_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
2
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3022 | 回复: 1   主题: [原创]EJB的三种会话介绍        下一篇 
panpan.nie
注册用户
等级:大校
经验:4754
发帖:217
精华:2
注册:1970-1-1
状态:离线
发送短消息息给panpan.nie 加好友    发送短消息息给panpan.nie 发消息
发表于: IP:您无权察看 2014-10-20 16:45:32 | [全部帖] [楼主帖] 楼主

EJB中的三种bean介绍

1、会话beanSession bean

负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过jdbc直接操作数据库,但大多数情况下都是通过实体bean来完成对数据库的操作。会话bean 分为两种:无状态会话bean,有状态会话bean

2、实体beanentity bean

实体bean用来表示持久存储库里的一个东西。实体bean只是数据模型,它不包括商务逻辑。实体bean可以将关系/对象数据库的数据映射到内存中供其它组件使用。实体bean是一直存在的,而且具有很高的容错性能。实体bean能供允许多用户同时访问。

3、消息驱动bean message-driven bean

它是专门用于异步处理java消息的组件,具有处理大量并发消息的能力只有在需要一个JMS客户的时候才会实用消息驱动bean。换句话说,消息驱动bean可以监听来自JMS消息服务的消息。客户绝对不会直接调用消息驱动bean;要想让消息驱动做点什么事情,客户必须向一个消息服务发出一条消息。

会话bean

无状态会话bean

平常,我们使用最多的是无状态bean,因为它的bean实例可供多个用户使用,所以它的性能比有状态bean高.正因为一个bean实例被多个用户使用.那么,前一个用户设置的值有可能被后一个用户所修改,所以它无法正确保存某个用户设置的值,因此是无状态的.

有状态的bean

有状态bean平常使用的并不多,因为它的一个bean实例只供一个用户使用,所以性能开销比较大,正因为它的实例只被一个用户使用, 用户为它设置的值是不会被其他用户修改,所以可以正确保存用户设置的值,因此是有状态的.

Bean实例的两种管理技术

1.无状态bean使用实例池来管理,类似于数据库的连接池,原理上是相同的,

    一个用户取得了实例池中的一个实例后,这个实例是不能被其他用户使用。
    2. 有状态bean,采用钝化和激活来管理,每个用户每次调用的都是他专属的bean,和Session的原理相似,用户取得bean后,bean会缓存一段时间 (如果默认时间10分钟内不使用就保存到硬盘(钝化),并释放内存,30分钟内不使用就彻底删除,在10分钟和30分钟之间调用bean,就激活(在内存中新建bean对象,然后把硬盘中对象的值还原到新建bean对象中)),用户以后每次调用都是同一个bean.时间可以在jboss中设置。(购物车)




赞(0)    操作        顶端 
lijun.fang
注册用户
等级:上尉
经验:751
发帖:29
精华:0
注册:1970-1-1
状态:离线
发送短消息息给lijun.fang 加好友    发送短消息息给lijun.fang 发消息
发表于: IP:您无权察看 2015-3-29 15:44:56 | [全部帖] [楼主帖] 2  楼

北京联动北方科技有限公司



赞(0)    操作        顶端 
总帖数
2
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论