差Ejb 2. 0とejb 3。

Anonim

ejb 2. 0 vs ejb 3. 0

両方ともejb 2. 0およびejb3。 0はエンタープライズJava Beans(EJB)のバージョンで、エンタープライズアプリケーションのモジュラー構築用に管理されたサーバーサイドのアーキテクチャで広く普及しています。 ejb2。 0とejb3。 0はどちらも同じ方法でユーザーにサービスを提供しますが、EJB 3.0についての中心的な点は、ejb2に比べて開発者の生活を単純化したことです。 0. ejb 2.0は、JCP(Java Community Process)に基づいて設計されているため、EJBアーキテクチャーを使用してJavaテクノロジーに基づくWebサービス・アプリケーションの実装およびデプロイメントを容易にすることができます。一方ejb 3.0では、開発の容易さを支援する新しい単純化されたEJB APIを定義するための基盤が提供されています。その追加機能は、Java EEとJava SEによる永続性とオブジェクト/リレーショナルマッピングの管理用の新しいJava Persistence APIです。

<! - 0 - >

ejb 2. 0はデータベースにアクセスするためにエンティティBeanを使用しますが、ejb 3. 0はすべての移植性の問題に対処するのに十分一般化されているすべてのデータニーズに対してJava Persistence APIをサポートしています。 ejb 3. 0は、XMLDescriptorファイルとJNDIよりも比較的高速に新しく導入されたメタデータアノテーションを持つPOJOを使用する方法でパフォーマンスが優れています。

ejb 2. 0は、ホームインターフェースとリモートインターフェースを記述するための要件と、javaxのような標準インターフェースを実行するという要件の点で重いものです。 ejb。 SessionBean。 ejb 3. 0には、標準インタフェースを使用する制限がありません。これは、ejbActivate、ejbLoad、ejbStoreなどのコンテナコールバックメソッドを実装する必要のないシンプルでうまく構成されたPOJOです。EJB 3.0エンティティのようなPOJOは軽量で、DAOからEntity Beanに変換するのは簡単です。

<! 0はEJB-QLを使用してデータベースクエリを書くための制限と柔軟性がありませんが、ejb 3.0は洗練されたEJB-QLで容易になり、したがって書き込まれたデータベースクエリは非常に柔軟です。

セキュリティは、デプロイメント記述子を使用してejb 2. 0で提供されます。 EJB3。 0は注釈を使用して、セキュリティ問題の設定とセットアップ作業を簡素化します。 ejb 3. 0は、プラグ可能なサードパーティの永続プロバイダでは簡単に使用できますが、ejb 2.0ではこの点で制限があります。

<! - 3 - >概要:

1。 ejb 2. 0はデータベースにアクセスするためにエンティティBeanを使用しますが、ejb3を使用します。 0はJPAを使用してデータベースにアクセスします。 2。 ejb。 0はデプロイメントの説明が必要ですが、ejb3を使用している間はデプロイメントの記述が不要です。 0. 999 3。 ejb 2. 0では、ejb3の間にデータベースにアクセスするためのホームとリモートのインタフェースを記述する必要があります。 0はそのような制約がなく、この点でより便利である。 4。セキュリティの問題は、ejb2のデプロイメント記述子を介して処理されています。 0しかしejb3。 0は注釈を使用しています。 5。 ejb 2. 0はサードパーティーの永続性プロバイダとの接続性に限界があります。 6。 ejb3で。 0の場合、クエリは非常に柔軟性があり、洗練されたEJB-QLによっていくつかのレベルの結合が可能になります。