この記事では主にmybatisチュートリアルの遅延読み込みに関する詳しい説明を紹介しています。遅延ロードの意味や使い方実装について詳しく紹介していますので、興味のある方は
遅延ロード
1 遅延ロードを使用する意味
を行うために、データクエリを実行します。データベース クエリのパフォーマンスを向上させるには、単一テーブル クエリの使用が複数テーブル関連のクエリよりも高速であるため、単一テーブル クエリを使用してみてください。
単一のテーブルをクエリすることでニーズを満たすことができる場合は、最初に単一のテーブルをクエリし、関連する情報が必要な場合は、再度クエリを実行します。
mybatis の resultMap は遅延ロード機能を提供し、遅延ロードは resultMap を通じて設定されます。
2 遅延読み込みをサポートするように mybatis を構成する
SqlMapConfig でグローバル パラメーターを構成する
3.1 実装のアイデア
クエリの順序とユーザー情報、一対一の問い合わせ。
最初は注文情報のみをクエリします
ユーザーが必要な場合は、Orders クラスの getUser() メソッドを呼び出して遅延読み込みを実行し、データベースに SQL を発行します。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
3.3 resultMap
1 2 3 4 5 6 7 8 9 |
|
3.4 mapper.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
3.5 テストコード
1 2 |
|
4 概要resultType、resultMap、および遅延ロードの使用シナリオ
4.1 遅延ロード:
データベース クエリのパフォーマンスを向上させるために、単一のテーブルのみをクエリすることで遅延ロードを実装する方法は数多くあります。関連情報をロードしてクエリするために使用されます。
mybatis はサービス層の遅延読み込み機能を提供します。4.2 resultType:
用途: ページに関連するすべてのクエリ情報が表示されている場合、resultType を直接使用して各レコードを pojo にマッピングし、リスト (リスト内の pojo) をトラバースすることが一般的です。フロントエンドページ。
4.3 resultMap:
関連付けとコレクションを使用して、1 対 1 および 1 対多の高度なマッピングを完了します。
4.4 関連付け:
機能: 関連付けクエリ情報を pojo クラスにマップします。
用途: 関連情報を簡単に取得するために、注文や関連ユーザー情報のクエリなど、関連付けを使用して関連注文を POJO にマッピングできます。
機能: 関連するクエリ情報をリスト コレクションにマップします。
用途: 関連情報を簡単に取得するには、コレクションを使用して関連情報をリスト コレクションにマップします。たとえば、ユーザー権限スコープのモジュールと関数をクエリするには、コレクションを使用してモジュールと関数のリストをマップします。リスト。
【関連する推奨事項】
1.
特別な推奨事項:
「php Programmer Toolbox」V0.1 バージョンのダウンロード
2.
以上がmybatis の遅延読み込みのソリューションの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。