2022.10.12: 簡単なバックグラウンド管理を書くために Java を学習している初心者は、必然的にページング コードを書くことで拷問を受けることになります (私は拷問されました)。しかし、MyBatis フレームワークに触れた後は、ほんの数回の設定と数行のコードだけで以前の管理を完了できます。ワークロードを数回繰り返しましたが、この記事では MyBatis ページネーション プラグインの全体的な使用プロセスを簡単に説明します。お役に立てれば、大変光栄です。
目次
2. MyBatis フレームワーク ページング プラグインの使用プロセス
1. 新しい MAVEN プロジェクトを作成し、依存関係をインポートします
2. MyBatis グローバル構成ファイルでプラグインを構成します。
1. MyBatisフレームワーク
まず、優れた永続層フレームワークである MyBatis フレームワークについて簡単に紹介します。私たちが初めて Java を学んだとき、データベースに接続して SQL ステートメントを送信し、SQL ステートメントのパラメーターを選択的に設定し、最終的にデータベースから返される結果セットを取得するには、永続層のコードを自分で記述する必要がありました。 MyBatis フレームワークを使用すると、ほぼすべての JDBC コードとパラメータの設定、および結果セットを取得する作業が不要になります。MyBatis は、単純な XML またはアノテーションを通じて、自分で設定したオブジェクト エンティティ クラスでデータベースをマップするように構成できます。
2. MyBatis フレームワーク ページング プラグインの使用プロセス
1. 新しい MAVEN プロジェクトを作成し、依存関係をインポートします
MAVEN プロジェクトについてはあまり紹介しません。Idea は新しい MAVEN プロジェクトを直接作成できます。MAVEN プロジェクトが構築されると、pom.xml という XML ファイルが付属します。このファイルでは、依存関係と依存関係のインポートを完了できます。関連する設定 必要なこと ページング プラグインのインポートの依存関係ですhttps://mvnrepository.com/ で依存関係を見つけ、必要なプラグインの依存関係 pagehelper を直接検索することをお勧めします使用します。
最初のものを選択し、クリックしてバージョンを選択します。ここでは 5.3.2 を選択します。
依存関係情報を pom.xml ファイルにコピーします。外側の層にも依存関係ペア タグが必要であることに注意してください。
<dependencies>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.3.2</version>
</dependency>
</dependencies>
2. MyBatis グローバル構成ファイルでプラグインを構成します。
MyBatis を使用するには、グローバル設定ファイル mybatis.cfg.xml が必要です。また、フレームワークがプラグインを認識できるように、グローバル設定ファイルの設定タグに次のコードを設定します。
<plugins>
<plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
</plugins>
注: 構成タグに赤い下線が引かれている場合は、plugins タグが間違った位置に配置されていることを意味します。DTD ファイルには独自の識別順序のセットがあり、plugins タグは環境タグの上に配置する必要があります。
3. テストクラスでプラグインをテストする
さて、このステップで設定は終了したので、プラグインをテストします。テストの前提条件は、グローバル構成ファイルでデータベースに接続する必要があり、データベースにテスト対象のデータがあることです。Java の場合、オブジェクト エンティティ クラスと、mapper.xml を作成する必要があります。マッピング ファイルはデータベース列とオブジェクト エンティティ クラスのマッピングを完了しており、mapper.xml マッピング ファイル内の対応するメソッドはデータベースの追加、削除、変更、確認の操作です。
上記の説明は繰り返しません。ここではプラグインのテストに集中します。上記のプロセスはデフォルトで完了しています。
以下の処理はMyBatisフレームワークを使用する場合の標準的な処理ですが、他のフレームワークを使用することを前提に簡略化して説明します。
public static void main(String[] args) throws IOException {
InputStream is = Resources.getResourceAsStream("mybatis.cfg.xml");
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
SqlSession sqlSession = factory.openSession();
PageHelper.startPage(1, 3);
StudentMapper studentMapper = sqlSession.getMapper(StudentMapper.class);
List<Student> students = studentMapper.selectAll();
PageInfo<Student> pageInfo = new PageInfo<>(students);
System.out.println(pageInfo.getList());
System.out.println(pageInfo.getTotal());
}
コードの最初の 3 行は固定ルーチンで、MyBatis グローバル構成ファイルの入力ストリームを取得し、グローバル構成ファイルをロードした後にファクトリ クラスを作成し、ファクトリ クラスを使用して SqlSession を作成し、SqlSession は追加のすべてのメソッドをカプセル化します。 、削除、変更、確認。次に、プラグインを開くと、現在のページ数とページごとのデータ数の 2 つのパラメーターがあり、次に、mapper. メソッドのインターフェイス オブジェクトを取得します。
重要な手順: PageInfo オブジェクトを作成し、メソッドの呼び出し後に返された配列を渡します。ここではすべての SQL をクエリします。渡されたものはすべてコレクションです。渡された後は、pageInfo オブジェクトが返されます。このオブジェクトには必要なものがすべて含まれていますget+ を使用すると、エントリの総数、現在のページ数、1 ページあたりのデータの数、データのコレクションなどの情報を表示できます。上記は、現在のコレクションと総数を取得することです。ページ。
結果を見てみましょう:
返された pageInfo オブジェクトには多くの情報が含まれており、現在のページに印刷する必要がある 3 つのデータのセットと、合計 5 つのデータも印刷されていることがわかります。テストは次のようになります。完成しました。