为什么我们将无状态bean称为会话bean,为什么不使用无会话bean

时间:2014-05-06 18:33:05

标签: java java-ee ejb

在我的理解中,会话总是意味着有状态。想想servlet会话对象,

想想cookie。如果会话是无状态的,我认为我们根本不需要会话。

在jee世界中,一种叫做无状态会话bean的EJB,

那么,为什么我们将无状态bean称为“会话bean”?

2 个答案:

答案 0 :(得分:3)

因为很久以前就有一家名为Weblogic的公司。该公司有一个名为Tengah的产品。然后(Weblogic)被BEA收购(Tengah更名为Weblogic),然后BEA被甲骨文收购。

无论如何,Session Bean有两种类型;无国籍(或有状态)session bean;

  

无国籍会话豆

     

有状态会话豆

     

实体豆

     

消息驱动的豆

答案 1 :(得分:0)

  

那么,为什么我们将无状态bean称为"会话bean" ?

在此背景下"会话"表示业务事务执行的时间段unit of work。对于Stateless和Singleton,此期间与请求/响应周期匹配。 在Stateless和Singleton bean中,当新请求到达时会打开一个新会话,它会一直存在,直到它发送回客户端的响应。 (每个请求的会话模式)

使用有状态会话bean,业务事务(会话)可以在多个客户端请求期间生存。 (每次会话会话模式)