溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

spingboot實(shí)現(xiàn)分頁(yè)查詢(xún)

發(fā)布時(shí)間:2021-06-24 12:03:02 來(lái)源:億速云 閱讀:174 作者:chen 欄目:大數(shù)據(jù)

本篇內(nèi)容主要講解“spingboot實(shí)現(xiàn)分頁(yè)查詢(xún)”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“spingboot實(shí)現(xiàn)分頁(yè)查詢(xún)”吧!

1 @Configuration 注解意思?

   答: 用于定義配置類(lèi),支出該類(lèi)是Bean配置的信息源,相當(dāng)于xml文件

2. @Bean 

    答: 相當(dāng)于xml中的 <bean></bean> 元素,放在方法上面,而不是類(lèi),意思是產(chǎn)生一個(gè)bean,交給Spring管理

3. @PathVariable

   答:路徑變量

4. springBoot中分頁(yè)查詢(xún)的實(shí)現(xiàn)   

/**
     * 頁(yè)面查詢(xún)方法
     * @param page 頁(yè)碼,從1開(kāi)始記數(shù)
     * @param size 每頁(yè)記錄數(shù)
     * @param queryPageRequest 查詢(xún)條件
     * @return
     */
    public QueryResponseResult findList(int page, int size, QueryPageRequest queryPageRequest){
        if(queryPageRequest == null){
            queryPageRequest = new QueryPageRequest();
        }
        //自定義條件查詢(xún)
        //定義條件匹配器
        ExampleMatcher exampleMatcher = ExampleMatcher.matching()
                .withMatcher("pageAliase", ExampleMatcher.GenericPropertyMatchers.contains());
        //條件值對(duì)象
        CmsPage cmsPage = new CmsPage();
        //設(shè)置條件值(站點(diǎn)id)
        if(StringUtils.isNotEmpty(queryPageRequest.getSiteId())){
            cmsPage.setSiteId(queryPageRequest.getSiteId());
        }
        //設(shè)置模板id作為查詢(xún)條件
        if(StringUtils.isNotEmpty(queryPageRequest.getTemplateId())){
            cmsPage.setTemplateId(queryPageRequest.getTemplateId());
        }
        //設(shè)置頁(yè)面別名作為查詢(xún)條件
        if(StringUtils.isNotEmpty(queryPageRequest.getPageAliase())){
            cmsPage.setPageAliase(queryPageRequest.getPageAliase());
        }
        //定義條件對(duì)象Example
        Example<CmsPage> example = Example.of(cmsPage,exampleMatcher);
        //分頁(yè)參數(shù)
        if(page <=0){
            page = 1;
        }
        page = page -1;
        if(size<=0){
            size = 10;
        }
        Pageable pageable = PageRequest.of(page,size);
        Page<CmsPage> all = cmsPageRepository.findAll(example,pageable);//實(shí)現(xiàn)自定義條件查詢(xún)并且分頁(yè)查詢(xún)
        QueryResult queryResult = new QueryResult();
        queryResult.setList(all.getContent());//數(shù)據(jù)列表
        queryResult.setTotal(all.getTotalElements());//數(shù)據(jù)總記錄數(shù)
        QueryResponseResult queryResponseResult = new QueryResponseResult(CommonCode.SUCCESS,queryResult);
        return queryResponseResult;
    }

5.  問(wèn)題:什么時(shí)候需要用Example?

答: 當(dāng)一次查詢(xún)需要 設(shè)置查詢(xún)條件較多時(shí),例如在上面

到此,相信大家對(duì)“spingboot實(shí)現(xiàn)分頁(yè)查詢(xún)”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI