pagehelper实现分页查询

1.引入jar包

pagehelper-4.1.3.jar
jsqlparser-1.4.jar

2.代码块
pageNum 页码,pageSize 条数

  Map<String, Object> params = new HashMap<>();
  调用service方法接口 recordList(pageNum, pageSize, params);    
  
  //删除值为空的参数
  recordList接口:
        params = CommonUtil.removeBlankValue(params);
 JSONArray recordArray;
        long total;
        // 利用PageHelper分页查询 注意:这个一定要放查询语句的前一行,否则无法进行分页,因为它对紧随其后第一个sql语句有效
        Log.debug(">>>>>>> [查询 页码,条数]" + pageNum + "," + pageSize);
        PageHelper.startPage(pageNum, pageSize);
        List<LoanVo> listPage = dao.getAllListPage(params);
     
        PageInfo<LoanVo> pageInfo = new PageInfo<>(listPage);
        recordArray = JSONUtil.parseArray(pageInfo.getList(), false);
        total = pageInfo.getTotal();
        JSONObject resObj = JSONUtil.createObj();
        resObj.put("Result", "OK");
        resObj.put("Records", recordArray);
        resObj.put("TotalRecordCount", total);
        return resObj.toString();
  ( 备注:dao层写法 :getAllListPage(@Param("params") Map<String, Object> params);  )

(备注2:xml非空判断
    <if test="params.instid != null  and params.instid != '' ">   and instr(ttr.instid, #{params.instid}) >0</if>   )

/**
     * 删除值为null || 空的键
     *
     * @param map
     * @param <K>
     * @param <V>
     * @return
     */
    public static <K, V> Map<K, V> removeBlankValue(Map<K, V> map) {
        if (MapUtil.isEmpty(map)) {
            return map;
        } else {
            Iterator iter = map.entrySet().iterator();
            while (iter.hasNext()) {
                Map.Entry<K, V> entry = (Map.Entry) iter.next();
                if ((ObjectUtil.isAllEmpty(entry.getValue()))) {
                    iter.remove();
                }
            }

            return map;
        }
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值