Hitachi

Cosminexus V11 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)


5.2.3 JPAプロバイダとは

JPAプロバイダとは,次に示すマッピング機能,API,およびクエリ言語を提供するJPA実装です。JPAプロバイダでは次の機能を提供しています。

JPAプロバイダを使用すると,データベースとのやり取りに関する処理を意識しないでアプリケーションを設計できるという利点があります。また,JPAプロバイダで利用できるJPQLというクエリ言語を使用することで,データベースに詳しくなくてもクエリを送信できるという利点もあります。

JPAプロバイダが提供するマッピング機能について次の図に示します。

図5‒3 JPAプロバイダが提供するマッピング機能の概要

[図データ]

図について説明します。

アプリケーション内にエンティティクラスを用意し,エンティティクラスからエンティティオブジェクトを生成します。ユーザは,エンティティオブジェクトの内容を変更することで,データベースの内容を変更します。これによって,データベースへの処理を意識しないで,データベースの内容を更新できます。

JPAプロバイダは,エンティティオブジェクトをデータベースのレコードとマッピングします。ユーザが実施した検索,挿入,削除,または更新の処理をデータベースに対して実行します。

生成されたエンティティオブジェクトはEntityManagerの管理下に置かれます。エンティティオブジェクトのフィールドの値が変更されると,EntityManagerは変更を自動的に検知して,変更をデータベースのテーブルに反映します。

EntityManagerは次の処理をするときに呼び出されます。

EntityManagerの詳細については,「5.4 EntityManagerとは」を参照してください。