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

JavaEE容器与Web容器

董法
2023-03-14

我对javaee/EJB比较陌生,我已经读了很多关于javaee容器的书。我有使用web容器(JBoss中的WAR文件)的经验。我还知道JBoss也可以用作JavaEE容器。

JavaEE容器和Web容器之间的区别是什么?

我知道JavaEE也能够包含一个。战争档案。它们不同吗?它们的区别是什么?是否有特定于供应商的偏好,哪一个更好?

共有3个答案

薄伟彦
2023-03-14

web容器和EJB容器是JavaEE容器的子集。JavaEE容器还包括应用程序客户机容器和小程序容器。

医生是这么说的:

部署过程在JavaEE容器中安装JavaEE应用程序组件。

>

  • JavaEE服务器:JavaEE产品的运行时部分。JavaEE服务器提供EJB[容器和web容器]*。

    企业JavaBeans(EJB)容器:管理JavaEE应用程序的企业bean的执行。企业bean及其容器在JavaEE服务器上运行。

    Web容器:管理JavaEE应用程序的JSP页面和servlet组件的执行。Web组件及其容器在JavaEE服务器上运行。

    应用程序客户端容器:管理应用程序客户端组件的执行。应用程序客户端及其容器在客户端上运行。

    小程序容器:管理小程序的执行。由web浏览器和Java插件共同运行在客户端上组成。

    *在文档中,它们使用复数形式,但实际上每个JavaEE服务器只有一个web容器和一个EJB容器。

  • 敖涵容
    2023-03-14

    JavaEE容器:管理在JavaEE服务器上运行的EJB、JMS、JTA的执行,例如JBoss、Glassfish。

    Web容器:管理JavaEE应用程序的网页、servlet和一些EJB组件的执行。Web组件及其容器在Web服务器上运行,例如Jetty、tomcat。

    冷英博
    2023-03-14

    首先,“J2EE”是一个过时的缩写,它现在被简单地称为“javaenterpriseedition”或javaee。

    与servlet容器(例如Tomcat)相反,“完整”JavaEE应用服务器还包含一个EJB容器。EJB是企业JavaBean,您可以在这里阅读很多关于它们的内容,例如(第四章)。EJB现在是版本3.2(JavaEE7和JavaEE8),以前的版本是3.1(JavaEE6)和3.0(JavaEE5);然而,最大的区别在于v2和v3之间。

    EJB旨在保持应用程序的业务逻辑。例如,无状态会话bean可以计算一些东西,或者表示一个网络服务,或者您的应用程序需要做的任何事情。消息驱动bean可以侦听消息队列,因此如果您想要异步通信,它们非常有用。单例bean保证每个bean有一个实例等。

    关于文件类型,EJB被打包到一个文件中。jar文件,将Web应用程序转换为一个。war文件,如果您想将它们混合在一个应用程序中,这将是最好的选择。ear文件(“企业档案”)。

    除了EJB,“完整”应用服务器还负责事务、安全、JDBC资源。。。我强烈建议您在servlet容器上使用它,但好处在于它的复杂性,因此您必须花费合理的时间来学习如何处理例如Websphere(Payara和WildFly更简单,并且是我的最爱)。JBoss和Weblogic也非常流行,如果您熟悉Tomcat,请查看TomEE。

     类似资料:
    • 有没有一种简单的方法可以将 JPA 异常转换为应用程序异常? 我在JavaEE容器(JBoss)中的远程会话Bean由客户端通过RMI调用。会话Bean注入了一个JPA实体管理器,并正在将某些内容写入数据库。事务由容器(JTA)处理。如果在写入数据库时发生任何异常,则将此异常抛出给客户端。由于我使用的是Hibernate,因此我在客户端中获得了Hibernate Exceptions。客户端不知道

    • > 我正试图弄清楚Kubernetes中的网络,尤其是多集装箱吊舱的处理。在我的简单场景中,我总共有3个豆荚。其中一个有两个容器,另一个只有一个容器,它希望与多容器吊舱中的特定容器通信。我想弄清楚kubernetes如何处理此类容器之间的通信。 为此,我在一个“sidecar体系结构”中有一个简单的多容器吊舱,YAML文件如下所示: > 我想用这个YAML文件实现的是,在pod“nginx”中,有

    • 我有几十个php应用程序,我想dockerize。我想知道什么是管理和性能方面的最佳设计。 > 一个包含所有服务的大容器(php fpm、mysql、nginx等) 所有服务的单独容器: container-php-fpm-app1 容器-nginx-app1 container-mysql-app1 container-php-fpm-app2 容器-nginx-app2 container-m

    • 本文向大家介绍Dubbo需要 Web 容器吗?相关面试题,主要包含被问及Dubbo需要 Web 容器吗?时的应答技巧和注意事项,需要的朋友参考一下 不需要,如果硬要用 Web 容器,只会增加复杂性,也浪费资源。  

    • 问题内容: 与在内置的Web服务器上运行独立的Java应用程序并在反向代理后面运行相比,构建一个小型的Java Web应用程序以在Servlet容器(如Tomcat)中运行的优势是什么? 我已经使用Java大约一年了。我注意到启动Tomcat需要时间,并且由于类加载器问题,并非总是可以进行热重新部署。Servlet API在我看来有些令人费解,尤其是从配置和RESTful设计的角度来看(实际上并没

    • Docker 目前已经得到了众多公有云平台的支持,并成为除虚拟机之外的核心云业务。 除了 AWS、Google、Azure、Docker 官方云服务等,国内的各大公有云厂商,基本上都同时支持了虚拟机服务和容器服务,甚至还专门推出了容器云业务。