Java™ Platform, Enterprise Edition (Java EE)
のアーキテクチャーでは、分散型の Web アプリケーションおよびエンタープライズ・アプリケーションを作成することができます。
このアーキテクチャーでは、システムの問題ではなく、プレゼンテーションとアプリケーションの問題に注目することができます。
Java EE のツールとフィーチャーを使用して、Web サイト、Enterprise Java Bean (EJB) アプリケーションなど、さまざまな目的のモジュールで構成されるアプリケーションを作成することができます。
EJB 3.1 コンポーネントを使用した場合は、トランザクションをサポートする分散型のセキュアなアプリケーションを作成することができます。
パーシスタント・データにアクセスするアプリケーションを開発する場合は、
Java Persistence API (JPA) を使用できます。
この標準により、パーシスタント・エンティティーの作成および使用が簡素化されます。
プレゼンテーション・ロジックの作成には、JavaServer Pages (JSP) や JavaServer Faces (JSF) などのテクノロジーを使用できます。
Java EE Platform Enterprise Edition (Java EE) では、
従来のバージョンよりもアプリケーションを短時間で簡単に作成できます。
Java EE は、使いやすさを大幅に改善し、以下を実現します。
- 開発時間の短縮
- アプリケーションの複雑度の軽減
- アプリケーションのパフォーマンスの向上
Java EE は、以下のツールを含め、シンプルなプログラミング・モデルを提供します。
- 注釈によるインライン構成。デプロイメント記述子がオプションになりました。
- 依存関係の注入。リソースの作成、およびルックアップがアプリケーション・コードから隠蔽されます。
- Java Persistence API (JPA)。明示的な SQL や JDBC のないデータ管理が実現されます。
- Enterprise Java Bean および Web サービスでの POJO (Plain Old Java Object) の使用。
Java EE には、エンタープライズ・アプリケーション向けのシンプルなパッケージ化規則が定められています。
- Web アプリケーションは .WAR ファイルを使用します。
- リソース・アダプターは RAR ファイルを使用します。
- エンタープライズ・アプリケーションは .EAR ファイルを使用します。
- lib ディレクトリーには共有 .JAR ファイルを入れます。
- .JAR ファイルは、アプリケーション・クライアントまたは EJB モジュールのいずれかとして EAR の application.xml に指定できます。
- EAR の application.xml に指定されない .JAR ファイルは、以下のように定義されます。
- application-client.xml を含む .JAR ファイルは、アプリケーション・クライアントを意味します。
- ejb-jar.xml を含む .JAR ファイルは、EJB モジュールを意味します。
- META-INF/MANIFEST.MF 指定のメイン・クラスを含む .JAR ファイルは、アプリケーション・クライアントを意味します。
- @Stateless、@Stateful、または @MessageDriven
の注釈を含む .JAR ファイルは、EJB アプリケーションを意味します。
- Main-Class を含む .JAR ファイルは、アプリケーション・クライアントを意味します。
- @Stateless 注釈を含む .JAR ファイルは、EJB アプリケーションを意味します。
- 以下のような多くのシンプルなアプリケーションには、デプロイメント記述子が必要なくなりました。
- EJB アプリケーション (.JAR ファイル)
- JSP テクノロジーのみを使用する Web アプリケーション
- アプリケーション・クライアント
- エンタープライズ・アプリケーション (.EAR ファイル)
Java EE は、依存関係の注入を使用してシンプルなリソース・アクセスを提供します。
- 依存関係の注入パターンでは、外部エンティティーによってオブジェクトの依存関係が自動的に提供されます。
- オブジェクトはこれらのリソースを明示的に要求する必要がありません。
- Java EE では、依存関係の注入は、コンポーネントに必要なすべてのリソースに適用できます。
- リソースの作成およびルックアップは、アプリケーション・コードから隠蔽されます。
- 依存関係の注入は、Java EE テクノロジー全体に適用できます。
- EJB コンテナー
- Web コンテナー
- クライアント
- Web サービス