問題の説明:
マイクロサービスでは、クエリインターフェイスが使用され、pageHelperが使用されます。データベースには8行のデータしかありません。問題は次のとおりです。
pageNum = 1&pageSize = 10の場合、返されるデータはこれらの8つのデータです。
pageNum = 2&pageSize = 10、pageNum = 3&pageSize = 10など...それでもデータが返されます!!!
理由:
これは、合理的なページングパラメータの合理化と呼ばれるpageHelperに付属する機能です。3.3.0以降で使用可能であり、デフォルトはfalseです。合理化が有効になっている場合、pageNum <1の場合は最初のページが照会され、pageNum> pagesの場合は最後のページが照会されます。合理化が無効になっている場合、pageNum <1またはpageNum> pagesが無効になっていると空のデータが返されます。
解決する:
一般的なプロジェクトに参加し<property name="reasonable" value="true" />
、
Spring Bootプロジェクトの内部:pagehelper.reasonable=true 当为false的时候,如果当前页超过最大页数后,就不会返回数据,当为true的时候,当前页超过最大页数后,会返回最后一页的数据
# PageHelper分页插件
pagehelper:
helperDialect: mysql
reasonable: false
supportMethodsArguments: true
params: count=countSql
概要: trueかfalseかに関係なく、独自のビジネスシナリオに従って設定できます。最大ページを超える場合は、データを返す必要がある場合はtrueに設定し、返す必要がない場合はfalseに設定します。データを返します。