All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.gitee.qdbp.jdbc.stream.SqlOnIdPairParamsStream Maven / Gradle / Ivy

package com.gitee.qdbp.jdbc.stream;

import com.gitee.qdbp.able.jdbc.paging.Paging;
import com.gitee.qdbp.jdbc.api.SqlDao;

/**
 * 同时设置queryId/countId, 设置参数后续操作: pageBy
 *
 * @author zhaohuihua
 * @version 20210530
 */
public class SqlOnIdPairParamsStream {

    protected final SqlDao dao;
    protected final String queryId;
    protected final String countId;
    protected final Object params;

    SqlOnIdPairParamsStream(SqlDao dao, String queryId, String countId, Object params) {
        this.dao = dao;
        this.queryId = queryId;
        this.countId = countId;
        this.params = params;
    }

    /**
     * 根据条件分页查询实体列表
*
    List<Map<String, Object>> users = qdbcBoot.sqlStream()
        .sqlId("SysUserMapper:queryRoleUsers", "SysUserMapper:countRoleUsers")
        .params(map)
        .pageBy(1, 10) // 查第1页,每页10行
        .list().asPartList(); // 分页后返回的是PageList, 需要转换为普通List
     * 
* * @param pageIndex 第几页 * @param pageSize 每页行数 * @return 返回后续流式操作对象 */ public SqlOnIdPairPagingStream pageBy(int pageIndex, int pageSize) { return pageBy(new Paging(pageIndex, pageSize)); } /** * 根据条件分页查询实体列表
*
    List<Map<String, Object>> users = qdbcBoot.sqlStream()
        .sqlId("SysUserMapper:queryRoleUsers", "SysUserMapper:countRoleUsers")
        .params(map)
        .pageBy(1, 10, 88) // 查第1页,每页10行, 88=提前查询的总行数
        .list().asPartList(); // 分页后返回的是PageList, 需要转换为普通List
     * 
* * @param pageIndex 第几页 * @param pageSize 每页行数 * @param total 总行数(用于提前查询总行数的情况) * @return 返回后续流式操作对象 */ public SqlOnIdPairPagingStream pageBy(int pageIndex, int pageSize, int total) { return pageBy(new Paging(pageIndex, pageSize, total)); } /** * 根据条件分页查询实体列表
*
    List<Map<String, Object>> users = qdbcBoot.sqlStream()
        .sqlId("SysUserMapper:queryRoleUsers", "SysUserMapper:countRoleUsers")
        .params(map)
        .pageBy(1, 10, false) // 查第1页,每页10行, false=无需统计总数
        .list().asPartList(); // 分页后返回的是PageList, 需要转换为普通List
     * 
* * @param pageIndex 第几页 * @param pageSize 每页行数 * @param needCount 是否统计总数 * @return 返回后续流式操作对象 */ public SqlOnIdPairPagingStream pageBy(int pageIndex, int pageSize, boolean needCount) { return pageBy(new Paging(pageIndex, pageSize, needCount)); } /** * 根据条件分页查询实体列表
*
    List<Map<String, Object>> users = qdbcBoot.sqlStream()
        .sqlId("SysUserMapper:queryRoleUsers", "SysUserMapper:countRoleUsers")
        .params(map)
        .pageBy(new Paging(1,10,false)) // 查第1页,每页10行, false=无需统计总数
        .list().asPartList(); // 分页后返回的是PageList, 需要转换为普通List
     * 
* * @param paging 分页参数 * @return 返回后续流式操作对象 */ public SqlOnIdPairPagingStream pageBy(Paging paging) { return new SqlOnIdPairPagingStream(dao, queryId, countId, params, paging); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy