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

MyMemoWiki

「Java EE JPA」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
 
(同じ利用者による、間の1版が非表示)
1行目: 1行目:
==Java EE JPA==
+
==[[Java EE JPA]]==
[[Java EE]]
+
[[Java EE]] |
 
{{amazon|4798124605}}
 
{{amazon|4798124605}}
  
 
==概要==
 
==概要==
*JPAはJDBCの上位層に抽象層として設けられ、SQLとの依存関係を解消
+
*JPAはJDBCの上位層に抽象層として設けられ、[[SQL]]との依存関係を解消
 
*javax.persistence パッケージに含まれる
 
*javax.persistence パッケージに含まれる
 
===主要コンポーネント===
 
===主要コンポーネント===
====ORM====
+
====O[[R]]M====
 
*オブジェクトとリレーショナルデータベースのデータをマッピング
 
*オブジェクトとリレーショナルデータベースのデータをマッピング
 
====エンティティ・マネージャーAPI====
 
====エンティティ・マネージャーAPI====
*エンティティのCRUD操作
+
*エンティティのC[[R]]UD操作
====JPQL(Java Persistence Query Language)====
+
====JPQL([[Java]] Persistence Query Language)====
*オブジェクト指向のクエリ言語でデータを取得
+
*オブジェクト指向のクエリ[[言語]]でデータを取得
====トランザクションとロック====
+
====[[トランザクション]]とロック====
*Java トランザクションAPI(JTA)で提供される
+
*Java [[トランザクション]]API(JTA)で提供される
 
====コールバックとリスナ====
 
====コールバックとリスナ====
*ビジネスロジックを、エンティティのライフサイクルにフック
+
*ビジネス[[ロジック]]を、エンティティのライフサイクルにフック
 
==環境==
 
==環境==
===Mavenの設定===
+
===[[Maven]]の設定===
 
====pom.xml====
 
====pom.xml====
*WildFly で永続性プロバイダにhibernateを使用する例
+
*[[WildFly]] で永続性プロバイダにhibernateを使用する例
 
  <dependencies>
 
  <dependencies>
   <!-- Import the JPA API, we use provided scope as the API is included in JBoss AS 7 -->
+
   <!-- Import the JPA API, we use provided scope as the API is included in [[JBoss]] AS 7 -->
 
   <dependency>
 
   <dependency>
 
     <groupId>org.hibernate.javax.persistence</groupId>
 
     <groupId>org.hibernate.javax.persistence</groupId>
 
     <artifactId>hibernate-jpa-2.0-api</artifactId>
 
     <artifactId>hibernate-jpa-2.0-api</artifactId>
     <scope>provided</scope>
+
     <scope>pro[[vi]]ded</scope>
 
   </dependency>
 
   </dependency>
 
  </dependencies>
 
  </dependencies>
39行目: 39行目:
 
|-
 
|-
 
|hibernate.show_sql
 
|hibernate.show_sql
|すべてのSQLステートメントをコンソールに出力する
+
|すべての[[SQL]]ステートメントをコンソールに出力する
 
|true | false
 
|true | false
 
|-
 
|-

2020年2月16日 (日) 04:27時点における最新版

Java EE JPA

Java EE |

概要

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

主要コンポーネント

ORM

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

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

  • エンティティのCRUD操作

JPQL(Java Persistence Query Language)

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

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

コールバックとリスナ

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

環境

Mavenの設定

pom.xml

  • WildFly で永続性プロバイダにhibernateを使用する例
<dependencies>
  <!-- Import the JPA API, we use provided scope as the API is included in JBoss AS 7 -->
  <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