用戶分頁查詢MP方式

1.MP方式實現(xiàn)分頁查詢(API調(diào)用)

 /**
     * 以MP的方式分頁查詢
     * 需求:
     *  1.分頁查詢 List<user>
     *  2.獲取記錄總數(shù)   封裝pageResult對象
     *
     * @param pageResult
     * @return
     */
    @Override
    public PageResult getUserList(PageResult pageResult) {
        //第一部分 實現(xiàn)數(shù)據(jù)的封裝!!!
        int pageNum = pageResult.getPageNum();  //獲取頁面
        int pageSize = pageResult.getPageSize();//獲取條件
        //參數(shù)1: page分頁對象
        Page<User> page = new Page(pageNum,pageSize);
        //參數(shù)2: 分頁的查詢條件  username模糊查詢
        //問題:  如果用戶沒有傳遞query  like關(guān)鍵字  拼接參數(shù)
        //動態(tài)拼接: 傳參拼接like  condition:true 拼接like條件
        //         false 不拼接 like關(guān)鍵字
        QueryWrapper<User> queryWrapper = new QueryWrapper<>();
        //判斷用戶是否傳參  如果傳參 返回true   反之 返回false
        boolean flag = StringUtils.hasLength(pageResult.getQuery());
        queryWrapper.like(flag,"username",pageResult.getQuery());

        //規(guī)則: page2個參數(shù) 根據(jù)分頁查詢返回 total/分頁后的記錄 4個參數(shù)
        page = userMapper.selectPage(page,queryWrapper);
        //根據(jù)分頁對象,獲取想要的結(jié)果
        List<User> userList = page.getRecords();
        long total = page.getTotal();
        pageResult.setTotal(total).setRows(userList);
        return pageResult;
    }

2.編輯配置類

包路徑: com.jt.config

說明: MP如果需要進行分頁的查詢 ,則必須添加配置類.否則分頁不能正常執(zhí)行.

關(guān)于配置類的說明:SpringBoot整合第三方框架時,提供了配置類的機制, 通過這種機制,第三方框架可以實現(xiàn)定制化的對象的創(chuàng)建.

//1.表示這個類 是一個配置類  目的: 封裝對象-交給Spring容器管理
@Configuration
public class MybatisPlusConfig {

    // @Bean 將方法的返回值對象,交給Spring容器管理
    //MP分頁機制  Mysql分頁語句/Oracle分頁語句  為了實現(xiàn)功能復(fù)用 需要手動配置
    //根據(jù)數(shù)據(jù)庫類型不同 之后動態(tài)的生成Sql  MP才能調(diào)用分頁對象
    @Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        //定義分頁攔截器對象
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MARIADB));
        return interceptor;
    }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容