| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「Java EE JPA」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
(ページの作成:「==Java EE JPA== [Java EE] {{amazon|4798124605}} ==概要== *JPAはJDBCの上位層に抽象層として設けられ、SQLとの依存関係を解消 *javax.persist…」)
(相違点なし)

2020年2月15日 (土) 07:33時点における版

Java EE JPA

[Java EE]

概要

  • JPAはJDBCの上位層に抽象層として設けられ、SQLとの依存関係を解消
  • javax.persistence パッケージに含まれる

主要コンポーネント

ORM

  • オブジェクトとリレーショナルデータベースのデータをマッピング

エンティティ・マネージャーAPI

  • エンティティのCRUD操作

JPQL(Java Persistence Query Language)

  • オブジェクト指向のクエリ言語でデータを取得

トランザクションとロック

  • Java トランザクションAPI(JTA)で提供される

コールバックとリスナ

  • ビジネスロジックを、エンティティのライフサイクルにフック

環境

Mavenの設定

pom.xml

  • WildFly で永続性プロバイダにhibernateを使用する例
<dependencies>
  <dependency>
    <groupId>org.hibernate.javax.persistence</groupId>
    <artifactId>hibernate-jpa-2.0-api</artifactId>
    <scope>provided</scope>
  </dependency>
</dependencies>

永続化コンテキスト(persistence.xml)

Hibernateの例

設定 内容 設定値
hibernate.show_sql すべてのSQLステートメントをコンソールに出力する false
hibernate.hbm2ddl.auto DDLの検査とデータベースへの適用を自動で行う。create-drop では終了時に、スキーマはドロップされる update | create | create-drop