【问题标题】:instance variables in stateless session beans无状态会话 bean 中的实例变量
【发布时间】:2011-08-04 08:28:38
【问题描述】:

我已经阅读了这篇文章,但它没有回答我的问题。 Stateless session bean with instance variables 我正在阅读 JEE5 教程,并在此页面上声明 http://download.oracle.com/javaee/5/tutorial/doc/bnbly.html " 但是,客户端可以更改池化无状态 bean 中实例变量的状态,并且此状态将保留到池化无状态 bean 的下一次调用 "

我不同意这一点.. 因为我认为在调用不同的 bean 实例时保持“任何”类型的状态是您需要“有状态”会话 bean 的东西。

请帮助我理解这一点 提前谢谢 鲁班

【问题讨论】:

    标签: session ejb-3.0 javabeans stateless


    【解决方案1】:

    在 EJB 中,“有状态”和“无状态”之间的区别是指对话状态,而不仅仅是 Java 对象状态(即任何使用实例字段)。

    From Wikipedia:

    在有状态会话 bean 中,实例变量表示唯一客户端 bean 会话的状态。客户端与 bean 的交互称为会话状态。

    典型的例子是电子商务应用程序的购物车。您将使用 SFSB 来存储“购物车”对象,因为它需要维护请求之间的会话状态。

    On the other hand:

    无状态会话 bean 是没有关联会话状态但可能具有实例状态的对象。它不允许并发访问 bean。实例变量的内容不能保证在方法调用中保留。客户端应将无状态会话 bean 的所有实例视为相同。

    相关问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-02
      • 2012-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-31
      相关资源
      最近更新 更多