反排序优化
概念
随着页码的不断增大,分页查询的效率会越来越低。为了解决这个问题,Jimmer支持了反排序优化。
反排序优化必须在以下前提同时满足时才生效:
-
此功能并不针对只关心页内数据而不关心分页前总行数的的查询,即
limit(limit, offset)
。必须是同时关心页内数据和总行数的查询。 -
样板查询必须具备明确的orderBy子句。
-
被查询的那一页的数据在分页前所有数据中偏后。即
offset
+pageSize
/ 2 >totalCount
/ 2
当以上条件都满足时,Jimmer会颠倒样板查询的排序。因为,页码相对较大的正排序查询和页码相对小的反排序查询等价。