【问题标题】:What's the difference between Java Web Application and Java Enterprise Application? [closed]Java Web 应用程序和 Java 企业应用程序有什么区别? [关闭]
【发布时间】:2013-07-04 14:49:03
【问题描述】:

我一直在研究 Java Web 应用程序和企业应用程序之间的区别,我发现它们的架构有点相似。

例如,企业应用程序具有客户端-、表示-、业务逻辑-和数据层。

客户端层可以是 Java 客户端、基于浏览器的客户端和移动客户端。
表示层可以是 JavaBeans 组件、servlet、门户和 JSP 组件。 在业务逻辑层中,您可以拥有服务器、Web 服务(SOAP、Restful 等)和 MDB 组件。
Data Tier中,您可以拥有 DBMS、LDAP 和 Data Feed。

现在,如果我们将这些组件与 Web 应用程序进行比较,您可以在不创建 Java Enterprise 应用程序的情况下使用它们。例如,我可以使用许多不同的技术来实现我的 Web 应用程序,例如 Hibernate、Maven、JSP 或 JSF、数据库、Servlet、JavaBeans 等。

我最大的问题是 Java 企业应用程序和 Web 应用程序之间的主要区别是什么?为什么我会使用 Java Enterprise 应用程序?

【问题讨论】:

  • 有什么区别?大约 60 美元/小时。
  • @Ernest 这不是我要寻找的主要区别。主要来自技术方面,而不是利润方面。

标签: java jakarta-ee web-applications


【解决方案1】:

the oracle website 可以看出,Java 企业版是一个规范。有很多来自不同供应商的实现。与标准版和企业版的主要区别在于,对于后者,您需要一个应用服务器,而不是像 tomcat 这样的 Web 服务器。这是因为您放置业务逻辑的EJBs(仅存在于 Java EE 规范中)需要一个容器来处理它们。

JBoss、Geronimo、Resin、WebSphere 等都是管理 EJB 的应用服务器。

【讨论】:

    【解决方案2】:

    我为什么要使用 Java Enterprise 应用程序?

    这个问题几乎在规范本身出现的同时出现。

    关于这个主题已经写了几本书。

    Expert One-on-One J2EE Development without EJB

    POJOs in Action: Developing Enterprise Applications with Lightweight Frameworks

    Spring 等技术也提供了替代方案。

    因此,在大多数情况下,您可以构建满足客户要求的 Web 应用程序,而无需构建企业应用程序。

    但是,有些应用程序具有特殊的功能和/或非功能要求,它们需要在提供某些服务的基础设施上运行业务层,例如:分布式事务、消息处理、计时器服务和远程方法调用。

    这种基础设施服务在 Web 服务器中不可用,因此您需要开发一个运行在重量级应用服务器上的应用程序(或至少一些组件)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-22
      • 2013-04-06
      • 2011-12-10
      • 1970-01-01
      • 1970-01-01
      • 2010-12-29
      • 1970-01-01
      相关资源
      最近更新 更多