IT・技術研修ならCTC教育サービス

サイト内検索 企業情報 サイトマップ

研修コース検索

Java EE 6: JPAを使ったデータベース・アプリケーション開発

コースコードOR128 期間4日間 時間09:30~17:00 価格\285,600(税抜き) 主催日本オラクル 株式会社

上記の価格表示は税抜き表示です。別途消費税がかかります。

コースコードOR128 期間4日間 時間09:30~17:00
価格\285,600(税抜き) 主催日本オラクル 株式会社

上記の価格表示は税抜き表示です。別途消費税がかかります。

コースコードOR128
期間4日間
時間09:30~17:00
価格\285,600(税抜き)
主催日本オラクル 株式会社

上記の価格表示は税抜き表示です。別途消費税がかかります。

コース内容

コース概要

このコースでは、Java Persistence API (JPA) を使用したオブジェクト・リレーショナル・マッピングを利用する Java アプリケーション開発手法について学習します。
コースでは、Java EE Web アプリケーションおよびスタンドアロンのJava SE アプリケーションで JPA を使用する方法、および Enterprise JavaBeans コンポーネントから JPAを使用する方法についても学習します。また、JPA 2.0の新機能および強化された機能の使用方法についても学習することができます。

学習目標

・JPAの主要な概念の理解
・JPA を使用したデータベース表と Java オブジェクトのマッピング
・ リレーションを持つ複数のデータベース表の更新
・ Bean Validationを使用したデータ検証
・ トランザクションの使用とロックの適用
・JPA アプリケーションのパフォーマンスの最適化
・ Java SE および EE 環境でのJPAによる CRUD 操作
・ JPQL および Criteria API を使用した問い合わせの作成

対象者

・Java EE 開発者
・データベース設計者
・J2EE 開発者
・Java 開発者

前提知識

必要とされる前提コースまたは前提知識:
 ・Java プログラミングの経験
 ・Java EE 6 プラットフォームの使用経験 (推奨)
 ・リレーショナル・データベースの使用経験 (推奨)

  Java EE 6 アプリケーション開発

推奨される前提コースまたは前提知識:
 ・Oracle WebLogic Server の基本的な管理知識
 ・NetBeans の使用経験 (推奨)
 ・Java EE アプリケーションの構築、およびデプロイの経験

内容

●コースの概要
・このコースの対象者
・コーススケジュール
・テキストにおける書式
・コース環境
・オブジェクト・リレーショナル・マッピングの必要性

●Java Persistence API の概要
・Java Persistence API
・エンティティ・クラスの作成
・永続フィールドと永続プロパティの使用
・生成された主キー(表、順序およびID)の使用
・エンティティ・マネージャの取得
・永続性ユニットの作成
・エンティティ・マネージャを使用したエンティティの作成、検索、更新、および削除
・JPA での型指定問い合わせの作成

●Java EE 環境での JPA の操作
・JPA を使用したコンテナの役割
・サーブレットからの JPA エンティティのアクセス
・UIフレームワークとしてのJSF
・EJBからの JPA エンティティへのアクセス
・ステートレス、ステートフルおよびシングルトン・セッションBeanの使用によるエンティティへの影響
・Java EE コンテキストでの永続性コンテキストの構成

●ケース・スタディ: オークション・アプリケーション
・オークション・アプリケーションの概要
・アークション・アプリケーションのドメイン・オブジェクトの定義
・オークション・システムの実装モデル

●JPA エンティティによるリレーショナル・データベースのモデル化
・データとオブジェクト・モデルのリレーションシップの調査
・リレーションシップ・プロパティを使用した関連の定義
・1対1の一方向の関連と双方向の関連の実装
・多対1および1対多の双方向の関連の実装
・多対多の一方向の関連及び双方向の関連の実装
・OrderBy と OrderColumn 注釈を使用したソート順序の定義
・OrphanRemoval 注釈の適用によるエンティティ孤立の防止

●エンティティ・マネージャの操作
・エンティティとエンティティ・マネージャの関係
・永続コンテキストと永続性ユニットの関係
・トランザクション・スコープが設定されたエンティティ・マネージャと拡張エンティティ・マネージャ
・エンティティのライフサイクル
・エンティティ・マネージャを使用したCRUD操作(永続化、検索、マージ、削除)
・デタッチ状態のエンティティとエンティティ・マネージャ
・カスケード操作の定義と使用

●Enum 型と Collection の永続化
・Enum 型を含むエンティティの永続化
・Collection を含むエンティティの永続化
・Map を含むエンティティの永続化

●Java Persistence Query Language (JPQL) を使用した問い合わせの作成
・Java Persistence Query Language (JPQL)
・ネイティブ問い合わせとJPQL
・条件を使用した結果のフィルタ処理
・必要なデータのみを返すための問い合わせの調整
・エンティティ間の結合
・複数のパラメータを持つ動的問い合わせの作成
・名前付き問い合わせの使用
・バルク更新およびバルク削除の実行

●Critieria API の使用
・Criteria API と JPQL の対比
・Criteria API の構造とコア・インタフェースの使用
・SELECT 句、 FROM 句、および WHERE 句の作成
・パスおよび式の作成
・ORDER BY 句、GROUP BY 句および HAVING 句の作成
・正規化されたメタモデルの使用

●JPA による Bean Validation の実装
・検証が実行される JPA ライフサイクルのフェーズ
・エンティティ・リスナー・クラスの作成
・検証グループの使用
・Bean Validation で提供される組み込みの検証制約注釈
・カスタムの検証制約の作成

●トランザクションの適用とロック
・トランザクション・セマンティクス
・プログラム的および宣言的なトランザクション・スコープ設定の比較
・JTA を使用したプログラム的なトランザクション・スコープの設定
・コンテナ管理のトランザクション・ポリシーの実装
・エンティティのバージョニングによるオプティミスティック・ロックのサポート
・Entity Manager API を使用したペシミスティック・ロックのサポート
・例外がトランザクション状態に対して与える影響

●高度なモデル化: エンティティ継承リレーションシップ
・エンティティ継承によるORマッピング戦略
・単一表クラス、結合サブクラス、表クラスの継承マッピング戦略の適用
・埋め込み可能クラスの使用
・@AttributeOverride 注釈および @AssociationOverride 注釈によるマッピングのオーバーライド
・コンポジット主キーの指定

●JPA パフォーマンスの最適化
・使用されていないエンティティのロードを回避するための遅延フェッチの使用
・任意の時点で必要とする総データ量を抑制するためのページ区切りの使用
・N + 1 問題を回避するための問い合わせの変更
・読み取り専用問い合わせの作成
・@IDENTITY による ID 生成に関連するパフォーマンス問題
・JPA と EclipseLink でのストアド・プロシージャの作成と使用
・JPA と EclipseLink でのキャッシュ最適化の使用

備考

※この研修コースの教材は、電子ファイル教材「eKit」で提供します。

関連するコース

開催予定日

本コースの開催日程については、お手数ですが、 お問合せフォーム からお問合せください。