MyBatisPlus IPage ページネーション プラグイン
Mybatis プラス ページング プラグイン: PageHelper+BootStrap+Vue+axios でページング機能を実現
次に、GitHub の PageHelper を紹介します
最初の依存関係のインポート
<!--springboot整合pagehelper-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.3.1</version>
</dependency>
RequestParam.java
@Data//Lombok插件
public class RequestParam<T> {
private Integer pageNum;
private Integer pageSize;
private T data;
}
サービス層 (次の商品は私のエンティティ クラスであり、必要に応じて変更できます)
HttpResult<?> queryGoodByNameAndStatus(RequestParam<Goods> param);
サービス層の実装クラス
@Override
public HttpResult<?> queryGoodByNameAndStatus(RequestParam<Goods> param) {
//分页开始
PageHelper.startPage(param.getPageNum(),param.getPageSize());
//调用mapper层接口
List<Goods> goods = goodMapper.queryGoodByNameAndStatus(param.getData().getName(), 0);
//把mapper接口返回参数放入pageInfo
PageInfo pageInfo=new PageInfo(goods);
return new HttpResult<>().ok(pageInfo);
}
コントローラー層
@PostMapping("queryGood")
public HttpResult<?> queryGood(@RequestBody RequestParam<Goods> requestParam) {
log.info(JSON.toJSONString(requestParam));
return userService.queryGoodByNameAndStatus(requestParam);
}
要約:
IPage は MybatisPlus に付属するプラグインであり、追加の依存関係を導入する必要はありませんが、クエリ ページングでは、IPage 型のパラメーターを含む特別なインターフェイスを定義する必要があります。
PageHelper は追加の依存関係を導入する必要がありますが、ページング パラメーターを含む特別なインターフェイスを使用することは必須ではなく、既存の List クエリ インターフェイスを直接使用できます。