0

我需要关于无状态和有状态会话 Bean 的帮助。我有几个问题。

  1. 请清楚地告诉我 Stateless 和 Stateful Session Bean 有什么区别?
  2. 一些人说有状态的 bean 保存有关客户端的信息。Stateful bean 保存什么样的信息?
  3. 假设我有一个包含 EJB(无状态和有状态会话 Bean)的 Web 项目。如果我完全关闭浏览器,我可以再次访问相同的 Stateful Session Bean 实例吗?

感谢您的回答。:)

4

1 回答 1

0
  1. 无状态 bean 是完全可互换的,任何实例都可以为任何传入请求提供服务,完全由容器自行决定。出于这个原因,他们不应该存储与特定客户端或请求相关的任何状态,因为他们不知道接下来将处理哪个客户端。有状态 bean 实例是为单个客户端创建的。他们可以存储状态并在调用之间维护它,以便客户端可以继续对话,而不仅仅是离散的请求。
  2. 存储的状态可以是您想要的任何数据。关键是同一个 bean 实例将处理单个客户端的请求,因此您可以添加存储数据所需的任何实例字段。
  3. 会话将由容器将与 bean 实例关联的浏览器 cookie 标识,所以我希望只要 cookie 没有被删除或以其他方式无效,它不会有任何区别。(我不太确定这一点,因为它不在规范的严格 EJB 部分)
于 2015-08-23T14:58:48.323 回答