1. 程式人生 > 其它 >檢視admin列表 分頁顯示

檢視admin列表 分頁顯示

根據前端獲取的資料封裝一個JavaBean

public class PageGridResult {
    // 當前頁數
    private Long page;
    // 總頁數
    private Long total;
    // 總記錄數
    private long records;
    // 每行顯示的內容
    private List<?> rows;


    public Long getPage() {
        return page;
    }

    public void setPage(Long page) {
        this.page = page;
    }

    public Long getTotal() {
        return total;
    }

    public void setTotal(Long total) {
        this.total = total;
    }

    public long getRecords() {
        return records;
    }

    public void setRecords(long records) {
        this.records = records;
    }

    public List<?> getRows() {
        return rows;
    }

    public void setRows(List<?> rows) {
        this.rows = rows;
    }
}

首先根據文件配置分頁外掛: https://baomidou.com/guide/interceptor.html#%E4%BD%BF%E7%94%A8%E6%96%B9%E5%BC%8F-%E4%BB%A5%E5%88%86%E9%A1%B5%E6%8F%92%E4%BB%B6%E4%B8%BE%E4%BE%8B

@Configuration
public class MybatisPlusConfig {

    // 最新版
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
        return interceptor;
    }
}

CURD文件: https://baomidou.com/guide/crud-interface.html#select
新建一個Page物件 此物件用於封裝分頁條件如: 第幾頁 每頁顯示多少條

 Page<AdminUser> adminUserPage = new Page<>(page, pageSize);

呼叫selectPage分頁查詢 查詢結果將反射至Page物件中

        adminMapper.selectPage(adminUserPage, queryWrapper);
    @Override
    public IPage<AdminUser> queryUserPage(Integer page, Integer pageSize) {
        QueryWrapper<AdminUser> queryWrapper = new QueryWrapper<>();
        queryWrapper.orderBy(true, true, "created_time");

        Page<AdminUser> adminUserPage = new Page<>(page, pageSize);

        adminMapper.selectPage(adminUserPage, queryWrapper);


        return adminUserPage;
    }

controller就很簡單了根據前端傳入的分頁條件呼叫service類 並建立之前封裝的javaBean物件 將資料賦值返回即可
若前端未傳入資料 則設定一個預設值查詢即可

    @Override
    public GraceJSONResult getAdminList(Integer page, Integer pageSize) {
        if (page == null) {
            page = 1;
        }

        if (pageSize == null) {
            pageSize = 10;
        }

        IPage<AdminUser> adminUserIPage = adminService.queryUserPage(page, pageSize);

        PageGridResult pageGridResult = new PageGridResult();

        pageGridResult.setPage(adminUserIPage.getPages());
        pageGridResult.setRecords(adminUserIPage.getRecords().size());
        pageGridResult.setTotal(adminUserIPage.getTotal());
        pageGridResult.setRows(adminUserIPage.getRecords());

        return GraceJSONResult.ok(pageGridResult);
    }