Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 互換編


8.2.1 CJPAプロバイダでの処理

CJPAプロバイダでは,次の機能を提供しています。

JPAを使用するには,ユーザが作成したアプリケーションでCJPAプロバイダが提供するインタフェースを操作します。CJPAプロバイダで実行する処理を次の図に示します。

図8‒2 CJPAプロバイダで実行される処理

[図データ]

図について説明します。

  1. persistence.xmlに定義されている永続化ユニットの情報から,CJPAプロバイダはEntityManagerFactoryを生成します。

    永続化ユニットとは,マッピング対象となるクラス,O/Rマッピングの情報,データソースなどを集めた論理的なグループです。永続化ユニットの詳細については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「5.4.4 永続化ユニットとは」を参照してください。

  2. 生成されたEntityManagerFactoryからEntityManagerを生成します。

  3. ユーザアプリケーションから,EntityManager,クエリ,またはトランザクションを操作します。

  4. EntityManager,クエリ,トランザクションから永続化コンテキストを通して,エンティティオブジェクトを操作します。

  5. エンティティオブジェクトの変更をJDBCドライバを介してデータベースに反映します。

なお,EntityManagerには,次の2種類があります。

EntityManagerの種類の詳細については,マニュアル「アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)」の「5.5.1 EntityManagerと永続化コンテキスト」を参照してください。

また,トランザクションではトランザクションのコミットやロールバックなどを管理します。CJPAプロバイダでは,トランザクションとしてリソースローカルトランザクションを使用できます。JTAトランザクションと連携する場合,J2EEコンテナが提供する機能を使用します。