第1章 はじめに
他のすべてのオブジェクト/関係マッピングツールと同様に、Hibernate は 1 つの形式から別の形式へのデータの変換を担当するメタデータを必要とします。Hibernate 2.x では、メタデータのマッピングは通常 XML テキストファイルで宣言されます。または、XDoclet を使用して Javadoc ソースコードアノテーションをコンパイル時プリプロセッサとともに使用することができます。
同様のアノテーションサポートが標準 JDK で利用できるようになりました (ただし、より強力であり、ツールサポートがより優れています)。たとえば、IntelliJ IDEA と Eclipse は自動コンプリート機能と JDK 5.0 アノテーションの構文ハイライト (バイトコードにコンパイルされ、実行時にリフレクションを使用して読み取られます) をサポートします。外部 XML ファイルは必要ありません。
JPA 仕様では、透過的なオブジェクト/リレーショナルマッピングパラダイムの興味と成功が認識されています。JPA 仕様では、オブジェクト/リレーショナル永続化メカニズムに必要な基本的な API とメタデータが標準化されます。Hibernate EntityManager は、JPA 永続化仕様で定義されたプログラミングインターフェイスとライフサイクルルールを実装し、Hibernate Annotations とともに信頼性のある Hibernate コア上に完全な (およびスタンドアロンの) JPA 永続化ソリューションを提供します。プロジェクトのビジネス上および技術的なニーズに応じて、3 つすべての組み合わせ、JPA プログラミングインターフェイスおよびライフサイクルなしのアノテーション、または純粋なネイティブ Hibernate を使用できます。常に、Hibernate ネイティブ API、または必要な場合はネイティブ JDBC および SQL を使用できます。