欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring Boot中整合PageHelper實現分頁功能詳細步驟

 更新時間:2024年05月29日 14:59:29   作者:風止?  
在Spring Boot項目中整合PageHelper并實現分頁查詢功能的全部步驟,通過以上配置和代碼,我們可以輕松地實現數據庫分頁查詢,提高了開發(fā)效率并改善了用戶體驗,感興趣的朋友跟隨小編一起看看吧

1.前言

        在開發(fā)web應用程序時,經常會遇到需要對數據庫中的數據進行分頁查詢的情況。為了簡化分頁查詢的實現過程,我們可以利用PageHelper這個優(yōu)秀的分頁插件來實現分頁功能。本文將介紹如何在Spring Boot項目中整合PageHelper,并演示如何使用它來實現分頁功能。

2.添加依賴 

首先,在你的Spring Boot項目中的pom.xml文件中添加PageHelper的依賴

<!--        PageHelper分頁查詢的依賴-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.4.6</version>
        </dependency>

3.聲明一個統(tǒng)一返回類

@Data
@NoArgsConstructor
@AllArgsConstructor
public class PageBean<T> {
    private int total;//總記錄數
    private List<T> items;//數據列表
}

4.使用PageHelper實現分頁查詢 

接下來,我將演示如何在Service層中使用PageHelper來實現分頁查詢。假設我們有一個UserService來處理用戶信息的查詢,我們可以按照以下步驟來實現分頁功能:

@Override
public PageBean<Article> getPageArticle(Integer pageNum, Integer pageSize, String categoryId, String state) {
    //1.創(chuàng)建PageBean用于封裝查詢好的數據
    PageBean<Article> pageBean = new PageBean<>();
    //2.開啟分頁查詢
    //開啟后PageHelper在底層,會攔截查詢前的SQL語句,在其后面加上類似LIMIT等數據庫特定的分頁語句
    PageHelper.startPage(pageNum, pageSize);
    //3.調用數據層查詢含條件的,pageHelper自動拼接sql語句
    //獲得創(chuàng)建人id
    Map<String,Object> map = ThreadLocalUtil.get();
    Integer userId = (Integer) map.get("id");
    List<Article> articles = articleDao.getPageArticle(userId,categoryId,state);
    //Page中提供方法,可以獲取PageHelper分頁查詢后  得到總記錄條數和當前數據
    Page<Article> p = (Page<Article>) articles;//如果不強轉的話多態(tài)是不允許父類類型調用子類特有的方法的
    //把數據填充到pageBean中
    pageBean.setTotal(p.getPages());
    pageBean.setItems(p.getResult());
    return pageBean;
}

        這里把返回結果List前傳成Page就是因為多態(tài)的弊端,無法調用子類特有的方法,Page是List的實現類所以說要調用Page的getPages()和getResult()來獲取條數和數據集合,就需要強轉。

         還有一點要注意的就是,當我開啟分頁查詢 PageHelper.startPage(pageNum, pageSize);Pagehelper會用Aop的思想幫我們自動在此方法執(zhí)行的sql中拼接一個limit子句。

5.總結

至此,我們已經完成了在Spring Boot項目中整合PageHelper并實現分頁查詢功能的全部步驟。通過以上配置和代碼,我們可以輕松地實現數據庫分頁查詢,提高了開發(fā)效率并改善了用戶體驗。

希望本文能夠對你有所幫助,祝你在Spring Boot項目中順利實現分頁功能!

到此這篇關于如何在Spring Boot中整合PageHelper實現分頁功能的文章就介紹到這了,更多相關Spring Boot PageHelper分頁內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • SpringCloud通過MDC實現分布式鏈路追蹤

    SpringCloud通過MDC實現分布式鏈路追蹤

    在DDD領域驅動設計中,我們使用SpringCloud來去實現,但排查錯誤的時候,通常會想到Skywalking,但是引入一個新的服務,增加了系統(tǒng)消耗和管理學習成本,對于大型項目比較適合,但是小的項目顯得太過臃腫了,所以本文介紹了SpringCloud通過MDC實現分布式鏈路追蹤
    2024-11-11
  • javaBean的基礎知識及常見亂碼解決方法

    javaBean的基礎知識及常見亂碼解決方法

    這篇文章主要介紹了javaBean的基礎知識及常見亂碼解決方法的相關資料,需要的朋友可以參考下
    2017-03-03
  • Java使用DateUtils對日期進行數學運算經典應用示例【附DateUtils相關包文件下載】

    Java使用DateUtils對日期進行數學運算經典應用示例【附DateUtils相關包文件下載】

    這篇文章主要介紹了Java使用DateUtils對日期進行數學運算的方法,可實現針對日期時間的各種常見運算功能,并附帶DateUtils的相關包文件供讀者下載使用,需要的朋友可以參考下
    2017-11-11
  • spring配置定時任務的幾種方式總結

    spring配置定時任務的幾種方式總結

    這篇文章主要介紹了spring配置定時任務的幾種方式總結,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • mybatis中使用InsertProvider注解報錯解決全過程

    mybatis中使用InsertProvider注解報錯解決全過程

    這篇文章主要介紹了mybatis中使用InsertProvider注解報錯解決全過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Java實現簡易界面通訊錄

    Java實現簡易界面通訊錄

    這篇文章主要為大家詳細介紹了Java實現簡易界面通訊錄,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Java中的八種基本數據類型詳解

    Java中的八種基本數據類型詳解

    本文詳細講解了Java中的八種基本數據類型,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • 使用maven一步一步構建spring mvc項目(圖文詳解)

    使用maven一步一步構建spring mvc項目(圖文詳解)

    這篇文章主要介紹了詳解使用maven一步一步構建spring mvc項目,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • java實現收藏功能

    java實現收藏功能

    這篇文章主要為大家詳細介紹了java實現收藏功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • springboot后端使用LocalDate接收日期的問題解決

    springboot后端使用LocalDate接收日期的問題解決

    在做Java開發(fā)時,肯定會碰到傳遞時間參數的情況,本文主要介紹了springboot后端使用LocalDate接收日期的問題解決,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09

最新評論