栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

何时在无状态会话bean上使用有状态会话bean?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

何时在无状态会话bean上使用有状态会话bean?

首先,您必须了解如何在服务器上创建和处理bean。

对于 无状态会话Bean
,服务器可以在池中维护可变数量的实例。每次客户请求这样的无状态Bean(例如通过方法)时,都会选择一个随机实例来满足该请求。这意味着,如果客户端执行两个后续请求,则无状态Bean的两个不同实例可能会为请求提供服务。实际上,两个请求之间没有对话状态。同样,如果客户端消失,则无状态Bean不会被销毁,并且可以处理来自另一个客户端的下一个请求。

另一方面,有 状态会话Bean
与客户端紧密相连。每个实例均被创建并绑定到单个客户端,并且仅服务于该特定客户端的请求。碰巧的是,如果您在有状态Bean上执行了两个后续请求,则始终会从该Bean的同一实例为您的请求提供服务。这意味着您可以在请求之间保持对话状态。在生命周期结束时,客户端调用remove方法,并且该bean被销毁/准备进行垃圾回收。

什么时候使用无状态或有状态?

这主要取决于您是否要保持 对话状态
。例如,如果您有一个将两个数字相加并返回结果的方法,则使用无状态bean,因为它是一次性操作。如果第二次使用其他数字调用此方法,您将不再对先前添加的结果感兴趣。

但是,例如,如果您要计算客户端已完成的请求数,则必须使用有状态Bean。在这种情况下,了解客户端之前多久请求一次bean方法非常重要,因此您必须在bean中维护对话状态(例如,使用变量)。如果您在此处使用无状态Bean,则每次都会从不同的Bean服务客户端的请求,这会弄乱您的结果。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/463419.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号