この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)
出典検索?: "Java Persistence API"
Java Persistence API(JPA)とは、関係データベースのデータを扱うJava SEおよびJakarta EE(旧・Java EE)のアプリケーションを開発するためのJava用フレームワークである。
JPAは、以下の3つの部分から成る。
API(javax.persistence パッケージで定義されている)
Java Persistence Query Language
オブジェクト/関係メタデータ
JPAのリファレンス実装はEclipseLinkとして実装されている。 Java Persistence API 1.0は、 ⇒JSR 220 (EJB 3.0) Expert Groupの作業の一部として2006年5月11日に策定された。JPA 2.0は ⇒JSR 317として、2009年12月10日にJava EE 6やEJB 3.1と同一日に承認された。JPA 2.1はJSR 338 JPAにおける永続性エンティティは、関係データベースにおける表を表した軽量Javaクラスである。そのインスタンスは表の個別の行に対応する。通常、他のエンティティとの関係を持ち、その関係はオブジェクト/関係メタデータで表される。オブジェクト/関係メタデータは、アノテーションを使ってエンティティクラスのソースファイルに直接記述することもできるし、別のXMLファイルとして記述することもできる。 Java Persistence Query Language (JPQL) は、関係データベースに格納されたエンティティに対するクエリに使用される。文法的にはSQLに似ているが、データベースの表を直接操作するのではなく、エンティティオブジェクトを操作する。 Java Persistence API 1.0は EJB 3.0仕様の一部であり、EJB 3.0はJava EE 5 プラットフォームの一部である。ただし、永続性を利用したアプリケーションを実行するのにEJBコンテナや Java EEアプリケーションサーバが必須というわけではない。 Java Persistence API 2.0はEJB 3.1とは分離され、独立したJSR仕様として定義された。EJB 3.1やJPA 2.0はJava EE 6の一部である。 Java Persistence APIは、HibernateやTopLink EJB 2.0までのEntity Beanなどのエンタープライズ・ビーンは、重すぎて複雑すぎ、Java EEアプリケーションサーバでしか使えないという問題があった。このため、その代替としてData Access Objectやオープンソースのフレームワークを使った軽量の永続性オブジェクトが使われることが多くなった。そのようなサードパーティーの永続性フレームワークの機能を集約したのがJava Persistence APIであり、HibernateやTopLink
歴史
エンティティ
Java Persistence Query Language
Enterprise JavaBeans との関係
Service Data Object API との関係
開発の背景
関連項目
仕様
Java Data Objects
実装
DataNucleus
GlassFish
Hibernate
外部リンク
一般的情報
⇒Sun's Persistence page
GlassFish's Persistence page
⇒The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 317
⇒Documentation for the final version of the EJB3 spec (called JSR220)
⇒Nabble JPA Forum
ドキュメンテーション
⇒Persistence in the Java EE 5 Tutorial
⇒Sun's Persistence FAQ
Java Persistence API Javadoc
Getting started with Java Persistence API 1.0
実装
⇒Amber - Resinの一部
⇒Apache OpenJPA
⇒DataNucleus
GlassFish
⇒Hibernate
Oracle
⇒EclipseLink
⇒Oracle TopLink
⇒Oracle Kodo
⇒SAP Netweaver Application Server
SimpleJPA - Amazon SimpleDB
記事
⇒Master the New Persistence Paradigm with JPA
⇒Persistence Pays Offs: Advanced Mapping with JPA
典拠管理データベース: 国立図書館
ドイツ