gpt4 book ai didi

java - EJB 容器是否驻留在所有应用程序服务器中。 EJB容器深入

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:05:55 25 4
gpt4 key购买 nike

我是 EJB 的新手。通过到目前为止的所有阅读和搜索,我了解到以下内容:

  • EJB 是编写和维护应用程序业务逻辑的 bean。
  • 所有的 EJB 都放在称为 EJB 容器的东西中。
  • EJB 容器不过是为管理 EJB 而编写的服务器端程序,并提供 EJB 应提供的基本功能(即事务管理、安全性、无冲突环境等)。

1) 我的疑问是,所谓的 EJB 组件是否驻留在所有应用程序服务器中?

2)当我们说EJB 2.1/3.0/3.1时,是否意味着新版本的EJB容器已经发布了?

3) EJB 容器是否也驻留在 Web 服务器中?

谢谢。

最佳答案

您正确理解了 EJB 思想。

  1. 是和否。取决于您对“应用程序服务器”的理解(歧义在下面的答案 3 中描述。)

  2. 当您说 EJB 2.x/3.0/3.1 等时,您指的是特定的 EJB 规范,这意味着您指的是一组服务版本支持。换句话说 - ,这意味着 EJB 容器必须在给定的版本中。
    首先发布规范(你可以看到草案版本,为新功能投票,基本上参与这个过程)。然后,编写引用实现 (RI) 只是为了表明它是“可行的”并且您可以立即使用它。然后,不同的供应商可能会提供他们自己的 EJB 容器,这些容器必须符合特定的 EJB 规范。

  3. 您需要了解几个不同的术语。可以肯定的是,我们在谈论同样的事情:

    • Web 服务器是 HTTP/HTTPS 服务器,如 Apache HTTP Server它服务于客户的请求。该术语不仅与 Java EE 相关。
    • Web 容器是一个 Java EE 术语,含义不多,但通常指的是 Servlet 容器,比方说 JSP 容器。这些容器为 Web 客户端提供服务,因此它是 web 容器。通常,Web 容器中有一个 Web 服务器(就像 Tomcat 的情况一样)。但是,您可以对其进行配置,以便静态资源仅由纯 Web 服务器提供服务器,而动态内容(您的 Java 应用程序、Servlet、JSP、等)将由您的 Web 容器作为服务器。
    • 应用服务器是一个模糊的名字。在 Java EE 纯粹主义者的世界中,它可能意味着只有这样的服务器才能提供 所有 Java EE 服务。非 Java EE 纯粹主义者将应用程序服务器 视为由您的应用程序组成的任意服务器。根据这个定义,您可以将 Tomcat(Web 容器和 Web 服务器)称为应用程序服务器

如您所见,词汇并不清晰,因为同一事物可能意味着很少的不同事物。此外,从 Java EE 6 开始,我们有了配置文件。这意味着您可以让 Java EE Application Server 符合 Web Profile 或 Full Profile。在这种情况下,只有 Web 配置文件服务器应被视为应用程序服务器

作为总结——您可以在 Web 容器中使用 EJB 容器。看看OpenEJB或者基本上在 TomEE 项目中。

关于java - EJB 容器是否驻留在所有应用程序服务器中。 EJB容器深入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9495041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com