当前位置: 首页 > 知识库问答 >
问题:

如何在 EJB 项目中创建会话?

刁冠宇
2023-03-14

我正在开发一个电子商务应用程序。为此,我想为每个客户创建一个会话,以维护他们的购物车信息。

如果它是一个普通的JavaEE项目,我会使用Http会话=request.getSession();并将所有购物车信息添加到该会话中。

我的问题是对于EJB项目,为上述目的创建会话的过程是什么?

共有3个答案

陆昊
2023-03-14

如果使用“EJB项目”,您的意思是应用程序的入口是使用RMI通过远程客户端联系的EJB bean,那么答案是为入口调用使用有状态会话bean。

客户端需要从服务器请求这个特定的bean(这通常通过远程JNDI查找发生),然后简单地保留引用。每次对这个完全相同的引用进行调用,您都会在服务器端访问同一个bean实例

宁飞宇
2023-03-14

远程EJB与HTTP/Servlet的不同之处在于,容器不会将某种映射与您不断发送的标识相关联,而是基于客户端维护会话的有状态bean。

如果您使用有状态会话bean(SFSB)作为服务器的边缘,那么bean就是您的会话。从这个bean中,您可以引用例如Map或任何数量的其他可以保持会话状态的bean。

使用CDI请求范围,您可以将请求范围bean注入到调用链上的任意其他bean中。这就像超文本传输协议请求一样。没有像这样工作的会话范围,但是从您的外观bean中,您可以将提到的Map放入请求范围bean中。注入此bean或使用生产者方法,您将有效地拥有一个超文本传输协议会话映射等效物。

席宜修
2023-03-14

EJB只不过是一个在相同/不同位置独立运行的业务逻辑

它不知道,谁在调用逻辑。在这种情况下,“会话”一词将不适合此处。

您可以将其称为“使用有状态会话 Bean 维护 EJB 会话 Bean 的状态”,以不同的方式调用

它只不过是一个带有实例变量的会话bean。收到实例后,您可以在bean中分配一个属性值

这通常用于在线购物,其中必须跟踪和维护交易

 类似资料:
  • 我创建了一个NetBeans企业应用程序,它由包装ejb(jar)项目和web(war)项目的ear组成。 我的web项目中有一个servlet,我想在其中使用ejb项目中的一个ejb。

  • 问题内容: 我知道有几个主题,但是我仍然不知道如何制作飞船的子弹。.我想在声音效果播放时,添加从飞船射击的MOUSEBUTTONDOWN子弹。谢谢您的帮助! 问题答案: 您必须完成几个步骤。您将需要项目符号的图片,存储项目符号位置的方法,创建项目符号的方法,呈现项目符号的方法以及更新项目符号的方法。您似乎已经知道如何导入图片,因此我将跳过这一部分。 您可以通过多种方式存储信息。我将使用项目符号左上

  • 嗨,我是sbt的新手,我正在学习这个教程http://www.scala-sbt.org/0.13/tutorial/Hello.html我在shell上遵循了相同的步骤,程序显示“嗨”,我很困惑,我的hello文件夹中没有这些文件 src/main/scala或src/main/java中的来源 src/test/scala或src/test/java中的测试 src/main/资源或src/t

  • 我正在制作一个目录来存储所有上传的文件在我的spring boot应用程序启动时。 此目录的路径存储在application.properties文件中。我正在尝试阅读这个路径,并在项目启动时创建一个目录。在启动时创建目录时,我无法获取路径。

  • 问题内容: 根据EJB客户端应用程序上的Netbeans教程,我似乎无法调用该方法: 编译错误: 客户: ejb: 远程接口: 现在,如果接口被修改: Bean现在可以使用以下方法: 但是,有一个NPE: 如何正确调用该方法?EJB未实例化? 问题答案: 我从头开始。我能想到的唯一区别是,我没有创建EJB应用程序,而是为bean创建了EJB模块。否则,我认为是相同的。 结构体: 客户代码: 豆: