2013-07-06 158 views
13

我一直在做一些关于Java Web应用程序和企业应用程序之间的区别的研究,我发现他们有一点类似的体系结构。Java Web应用程序和Java企业应用程序有什么区别?

例如,企业应用程序具有客户端,演示文稿,业务逻辑和数据层。

客户端层可以是Java客户端,基于浏览器的客户端和移动客户端。
演示文稿层可以是JavaBeans组件,servlet,门户和JSP组件。
业务逻辑层您可以拥有服务器,Web服务(SOAP,Restful等)和MDB组件。
数据层您可以拥有DBMS,LDAP和数据馈送。

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

我最大的问题是Java Enterprise应用程序和Web应用?为什么我会使用Java Enterprise应用程序?

+7

有什么区别?大约$ 60 /小时。 –

+0

@厄内斯特,这不是我寻找的主要区别。大部分来自技术方面,而不是来自利润方面。 –

回答

6

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

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

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

Expert One-on-One J2EE Development without EJB

POJOs in Action: Developing Enterprise Applications with Lightweight Frameworks

而且也技术,如Spring提供替代品。

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

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

这种基础架构服务在Web服务器中不可用,因此,您需要开发在大量应用程序服务器上运行的应用程序(或至少某些组件)。

5

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

JBoss,Geronimo,Resin,WebSphere等是管理EJB的应用程序服务器。

相关问题