2013-07-06 8 views
13

私は、Java Webアプリケーションとエンタープライズアプリケーションの違いについていくつかの調査を行っていますが、私が見つけたのはそれらが少し類似したアーキテクチャを持っていることです。Java WebアプリケーションとJava Enterprise Applicationの違いは何ですか?

たとえば、エンタープライズアプリケーションには、クライアント、プレゼンテーション、ビジネスロジック、およびデータ層があります。

クライアント層は、Javaクライアント、ブラウザベースのクライアント、モバイルクライアントです。
プレゼンテーション層は、JavaBeansコンポーネント、サーブレット、ポータル、およびJSPコンポーネントです。
ビジネスロジック層では、サーバー、Webサービス(SOAP、Restfulなど)とMDBコンポーネントを使用できます。
データ層には、DBMS、LDAP、およびデータフィードがあります。

これらのコンポーネントをWebアプリケーションと比較すると、Java Enterpriseアプリケーションを作成せずにそれらのコンポーネントを使用できます。たとえば、Hibernate、Maven、JSPやJSF、データベース、サーブレット、JavaBeansなどのWebアプリケーションを実装するために、さまざまなテクノロジーを使用できます。

私の最大の質問は、Java EnterpriseアプリケーションとWeb応用?なぜ私はJava Enterpriseアプリケーションを使用するのですか?

+7

違いは何ですか?約$ 60 /時。 –

+0

@Ernestこれは私が探していた大きな違いではありません。主に技術面からであり、利益面からではありません。 –

答えて

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 Enterprise Editionは仕様です。さまざまなベンダーの実装がたくさんあります。標準版とエンタープライズとの主な違いは、後者の場合、TomcatのようなWebサーバーではなく、アプリケーションサーバーが必要だということです。これは、ビジネスロジック(Java EE仕様にのみ存在する)を配置するEJBsには、それらを処理するコンテナが必要なためです。

JBoss、Geronimo、Resin、WebSphereなどは、EJBを管理するアプリケーションサーバーです。

関連する問題