Mybatis分頁外掛只顯示第一頁的問題

jackcheng1117發表於2018-09-29

問題程式碼如下:

public ServerResponse<PageInfo> getProductList(int pageNum, int pageSize) {
        PageHelper.startPage(pageNum,pageSize);
        List<Product>productList = productMapper.selectProductList();

        List<ProductListVo> productListVoList = Lists.newArrayList();
        for(Product productItem:productList){
            productListVoList.add(assembleProductListVo(productItem));
        }

        PageInfo pageResult = new PageInfo(productListVoList);
        return ServerResponse.createBySuccess(pageResult);
    }

 當我這樣寫後,發現只會顯示第一頁資料,而且  total == pageSize;

 

正確程式碼:

public ServerResponse<PageInfo> getProductList(int pageNum, int pageSize) {
        PageHelper.startPage(pageNum,pageSize);
        List<Product>productList = productMapper.selectProductList();

        List<ProductListVo> productListVoList = Lists.newArrayList();
        for(Product productItem:productList){
            productListVoList.add(assembleProductListVo(productItem));
        }

        PageInfo pageResult = new PageInfo(productList);
        pageResult.setList(productListVoList);
        return ServerResponse.createBySuccess(pageResult);
    }

原因:

    

productList 是通過分頁得到的結果,這個集合中包含了分頁的基本資訊,所以用這個。

另一個集合 productListVoList 是你手動建立的,沒有分頁資訊。

 

相關文章