JPA アーキテクチャー

Java Persistence API は、パーシスタンス・プログラミング・モデルを簡素化したものです。

データ・パーシスタンス、つまり一部の形式の不揮発性ストレージ (リレーショナル・データベースなど) のアプリケーション・セッション間でデータを維持する機能は、エンタープライズ・アプリケーションにとってはとても重要になります。この環境用に開発するアプリケーションでは、データ・パーシスタンス自体を管理するか、サード・パーティーのソリューションを使用してデータベース更新と検索を処理する必要があります。 JPA には、データ・パーシスタンスとオブジェクト関連マッピングを管理するメカニズムと、EJB 3.0 仕様の関数が備わっています。

JPA は Java EE 環境に適用される Java プログラミング・モデルに基づいていますが、同時に JPA は Java SE 環境でも作動します。JPA 仕様は、ベンダー固有のマッピング実装に依存するのではなく、オブジェクト関連マッピングを内部的に定義し、オブジェクトをデータベース表にマップするために注釈または XML を使用します。

JPA は、Java Enterprise Edition (Java EE) コンテナーの内外で作動するように設計されています。JPA をコンテナー内で実行すると、アプリケーションはそのコンテナーを使用してパーシスタンスを管理できます。JPA を管理するコンテナーがない場合、アプリケーション自体でパーシスタンス管理を処理する必要があります。 コンテナー管理パーシスタンス用に設計されたアプリケーションの場合にはコンテナー外で使用することはできませんが、独自のパーシスタンスを管理するアプリケーションの場合にはコンテナー環境でも Java SE 環境でも作動します。

また JPA には照会言語 JPQL もあります。JPQL を使用すると、作業しているデータベースに固有の SQL 照会を作成しないでも、オブジェクトを検索できます。

JPA をサポートする Java EE コンテナーは、パーシスタンス・プロバイダーを指定しなければなりません。JPA パーシスタンス・プロバイダーは、EJB 3.0 環境でデータを保持するために以下のエレメントを使用します。

フィードバック