直接跳到内容
本页目录

分页查询

技术交流QQ群:3549030

分页查询接口

接口地址:xxx/yyy/zzz/queryPage

请求方式:POST

Body入参结构

json
// QueryCondition 查询条件对象 
{
     "pageNumber": 1,
     "pageSize": 20,
     "orderColumnName": "createTime", //排序字段
     "orderBy": "desc",// 排序方式 asc 升序  desc降序;如果单独不写(排序字段有写)默认升序asc
     "modelMap": //查询字段及字段值。可不传,表示不带条件的分页
     {
         "menuCode": "sys",
         "displayNo": 3,
         "remark": "小虎"
     },
     "queryTypeMap": //查询字段及查询条件。可不传,表示不带条件的分页
     {
         "menuCode": "eq",  // 是等号的情况可以不用传
         "displayNo": "ge",
         "remark": "like"
     } // 如果所有字段的条件都是等于,queryTypeMap整体不用传
 }
  1. 查询条件说明
java
EQUAL("eq"),                          // 相等  经常使用
NOT_EQUAL("neq"),                // 不相等
LESS_THAN("lt"),                    // 小于
LESS_EQUAL("le"),                 // 小于等于
GREATER_EQUAL("ge"),         // 大于等于
GREATER_THAN("gt"),           // 大于
LIKE("like"),                         // 模糊匹配 %xxx%    经常使用
LIKE_LEFT("like_left"),          // 左模糊 %xxx
LIKE_RIGHT("like_right"),      // 右模糊 xxx%
NOT_EMPTY("not_empty"),           // 不为空值的情况
EMPTY("empty"),                        // 空值的情况
BETWEEN_AND("between_and"),  // 区间
IN("in"),                                     // 在范围内
NOT_IN("not_in");                      // 不在范围内
  1. 树表分页查询条件约定情况

树表结构的功能页面查询时传xxxCode服务端会做为parentCode的查询条件,查询其子集记录。

例如:

json
{
  "pageNumber": 1,
  "pageSize": 20,
  "orderColumnName": "updateTime",
  "orderBy": "desc",
  "modelMap": {
    "menuCode": "sys"
  }
}

后端会解析出查询语句:

sql
select * 
  from sys_menu 
 where 1=1 
   and parent_code = 'sys'
 order by update_time desc
 limit 0,20; 
--limit pageNumber*(pageSize-1),pageSize

Controller层分页查询写法

java
public class TableController extends KungfuController {
  // 要相信自己的眼睛,就这么简单
  public void queryPage() {
      // Model 替换成具有的Model类
      renderJson(R.ok("data", queryPage(Model.class)));
  }
}
分页查询已经加载完毕