HIBERNATE - Relational Persistence for Idiomatic Java
次のページ
HIBERNATE - Relational Persistence for Idiomatic Java
Hibernateリファレンス・ドキュメント
2.1.6
目次
前書き
1. 日本語訳について
1.1. 日本語版翻訳者について
1. Tomcatでクイック・スタート
1.1. Hibernateを始めよう
1.2. 最初の永続クラス
1.3. ネコのマッピング
1.4. ネコと遊ぶ
1.5. 終わりに
2. アーキテクチャ
2.1. 概観
2.2. JMXとの統合
2.3. JCAのサポート
3. SessionFactoryの設定
3.1. プログラムでの設定
3.2. SessionFactoryの取得
3.3. ユーザが用意するJDBCコネクション
3.4. Hibernateが用意するJDBCコネクション
3.5. オプションの設定プロパティ
3.5.1. SQL方言
3.5.2. アウター・ジョインによるフェッチ
3.5.3. バイナリ・ストリーム
3.5.4. カスタム CacheProvider
3.5.5. トランザクション戦略の設定
3.5.6. JNDIバインドの SessionFactory
3.5.7. クエリ言語の置き換え
3.6. ロギング
3.7. NamingStrategy の実装
3.8. XML設定ファイル
4. 永続クラス
4.1. 簡単なPOJOの例
4.1.1. 永続フィールドに対するアクセサとミューテータを定義する
4.1.2. デフォルト・コンストラクタを実装する
4.1.3. 識別子プロパティを用意する(オプション)
4.1.4. finalクラスにしない(オプション)
4.2. 継承の実装
4.3. equals() と hashCode() の実装
4.4. Lifecycleコールバック
4.5. Validatableコールバック
4.6. XDocletマークアップの使用
5. O/Rマッピングの基本
5.1. マッピング定義
5.1.1. Doctype
5.1.2. hibernate-mapping
5.1.3. class
5.1.4. id
5.1.4.1. generator
5.1.4.2. Hi/Loアルゴリズム
5.1.4.3. UUIDアルゴリズム
5.1.4.4. アイデンティティ・カラムとシーケンス
5.1.4.5. 代入識別子
5.1.5. composite-id
5.1.6. discriminator
5.1.7. version(オプション)
5.1.8. timestamp(オプション)
5.1.9. property
5.1.10. many-to-one
5.1.11. one-to-one
5.1.12. component, dynamic-component
5.1.13. subclass
5.1.14. joined-subclass
5.1.15. map, set, list, bag
5.1.16. import
5.2. Hibernate型
5.2.1. エンティティとバリュー
5.2.2. 基本のバリュー型
5.2.3. 永続列挙型
5.2.4. カスタム・バリュー型
5.2.5. Any型のマッピング
5.3. SQL引用識別子
5.4. モジュール式マッピング・ファイル
6. コレクションのマッピング
6.1. 永続性コレクション
6.2. コレクションのマッピング
6.3. 値のコレクションとmany-to-many関連
6.4. one-to-many関連
6.5. lazy初期化(Lazy Initialization)
6.6. ソートされたコレクション
6.7. <idbag>の使用
6.8. 双方向関連
6.9. 3項関連
6.10. Heterogeneousな関連
6.11. コレクションの例
7. コンポーネントのマッピング
7.1. 依存オブジェクト
7.2. 依存オブジェクトのコレクション
7.3. mapのインデックスとしてのコンポーネント
7.4. 複合識別子としてのコンポーネント
7.5. 動的コンポーネント
8. 継承のマッピング
8.1. 3つの戦略
8.2. 制限
9. 永続データの操作
9.1. 永続オブジェクトの作成
9.2. オブジェクトのロード
9.3. クエリの実行
9.3.1. スカラ・クエリ
9.3.2. クエリ・インターフェイス
9.3.3. スクローラブル・イテレーション
9.3.4. コレクションのフィルタリング
9.3.5. Criteriaクエリ
9.3.6. ネイティブSQLのクエリ
9.4. オブジェクトの更新
9.4.1. 同じSessionでの更新
9.4.2. 関連付けをやめたオブジェクトの更新
9.4.3. 関連付けをやめたオブジェクトの再関連付け
9.5. 永続オブジェクトの削除
9.6. フラッシュ
9.7. Sessionの終了
9.7.1. Sessionのフラッシュ
9.7.2. データベース・トランザクションのコミット
9.7.3. Sessionのクローズ
9.8. 例外処理
9.9. ライフサイクルとオブジェクトのグラフ
9.10. インターセプタ
9.11. メタデータAPI
10. トランザクションと同時並行性
10.1. Configuration、Session、Factory
10.2. スレッドとコネクション
10.3. オブジェクト・アイデンティティの考慮
10.4. optimistic同時並行性制御
10.4.1. 自動バージョン付けを使う長いSession
10.4.2. 自動バージョン付けを使う多くのSession
10.4.3. アプリケーション・バージョン・チェック
10.5. Sessionの切断
10.6. 悲観的ロック
11. HQL: Hibernateクエリ言語
11.1. 大文字と小文字の区別
11.2. from句
11.3. 関連とジョイン
11.4. Select句
11.5. 集約関数
11.6. ポリモーフィックなクエリ
11.7. where句
11.8. 式
11.9. order by句
11.10. group by句e
11.11. 副問い合わせ
11.12. HQLの例
11.13. Tips & Tricks
12. Criteriaクエリ
12.1. Criteriaインスタンスの作成
12.2. リザルトセットの絞込み
12.3. 結果の整列
12.4. 関連
12.5. 動的関連のフェッチ
12.6. クエリの例
13. ネイティブSQLクエリ
13.1. QueryベースSQLの作成
13.2. 別名とプロパティ参照
13.3. 名前付きSQLクエリ
14. パフォーマンスの改善
14.1. コレクションのパフォーマンスの理解
14.1.1. 分類
14.1.2. コレクションの更新に最も効率的なlist、map、set
14.1.3. インバース・コレクションに最も効率的なbagとlist
14.1.4. 一括削除
14.2. lazy初期化のためのプロキシ
14.3. バッチ・フェッチングの使用
14.4. 第2レベル・キャッシュ
14.4.1. キャッシュのマッピング
14.4.2. 戦略: read only
14.4.3. 戦略: read/write
14.4.4. 戦略: nonstrict read/write
14.4.5. 戦略: transactional
14.5. Sessionキャッシュの取り扱い
14.6. クエリ・キャッシュ
15. ツールセット・ガイド
15.1. スキーマ生成
15.1.1. スキーマのカスタマイズ
15.1.2. ツールの実行
15.1.3. プロパティ
15.1.4. Antの使用
15.1.5. インクリメンタルなスキーマ更新
15.1.6. インクリメンタルなスキーマ更新に対するAntの使用
15.2. コード生成
15.2.1. 設定ファイル(オプション)
15.2.2. メタ属性
15.2.3. BasicFinderジェネレータ
15.2.4. Velocityベースのレンダラ/ジェネレータ
15.3. マッピング・ファイルの生成
15.3.1. ツールの実行
16. 例: 親/子関係
16.1. コレクションについての注意
16.2. 双方向one-to-many
16.3. ライフサイクルのカスケード
16.4. カスケードupdate()の使用
16.5. 結論
17. 例: Weblogアプリケーション
17.1. 永続クラス
17.2. Hibernateのマッピング
17.3. Hibernateのコード
18. 例:いろいろなマッピング
18.1. 雇用者/従業員
18.2. 作者/作品
18.3. 顧客/注文/製品
19. ベスト・プラクティス