最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Springboot整合mybatis-plus使用pageHelper進行分頁(使用步驟)

 更新時間:2024年11月23日 09:50:14   作者:ueanaIU瀟瀟子  
PageHelper是一個MyBatis分頁插件,可以方便地實現(xiàn)數(shù)據庫查詢結果的分頁功能,在Maven或Gradle項目中引入依賴,并在配置文件中進行配置,本文給大家介紹Springboot整合mybatis-plus使用pageHelper進行分頁,感興趣的朋友跟隨小編一起看看吧

PageHelper 使用步驟全解析 

在進行 Web 應用開發(fā)時,經常會涉及到數(shù)據庫數(shù)據的分頁展示。PageHelper 是一個非常實用的 MyBatis 分頁插件,它能夠方便地實現(xiàn)數(shù)據庫查詢結果的分頁功能,極大地提高了開發(fā)效率。以下將簡單介紹 PageHelper 的使用步驟。 

一、引入依賴

Maven 項目

如果你的項目是基于 Maven 構建的,需要在項目的pom.xml文件中添加 PageHelper 的依賴項。 

<!--pagehelper分頁插件-->
<dependency>
  <groupId>com.github.pagehelper</groupId>
     <artifactId>pagehelper-spring-boot-starter</artifactId>
     <version>1.4.0</version>
</dependency>

Gradle 項目 

對于 Gradle 項目,在build.gradle文件中添加以下依賴:

implementation 'com.github.pagehelper:pagehelper-spring-boot-starter:1.4.0'

二、配置 PageHelper

  • 如果是 Spring Boot 項目,在application.propertiesapplication.yml文件中進行配置。以application.yml為例:
pagehelper:
  helper-dialect: mysql # 指定數(shù)據庫方言,這里以MySQL為例
  reasonable: true # 分頁合理化,如果pageNum<1會查詢第一頁,如果pageNum>pages會查詢最后一頁
  support-methods-arguments: true # 支持通過Mapper接口參數(shù)傳遞分頁參數(shù)
  params: count=countSql # 用于從對象中根據屬性名取值,這里配置count的SQL

這些參數(shù)的詳細解釋如下:

  • helper-dialect: 指定分頁插件的數(shù)據庫方言。PageHelper會自動檢測當前的數(shù)據庫鏈接,自動選擇合適的分頁方式。如果你使用的是MySQL,可以明確指定為mysql。
  • reasonable: 是否啟用分頁合理化。如果啟用,當pageNum<1時,會自動查詢第一頁的數(shù)據,當pageNum>pages時,自動查詢最后一頁數(shù)據;不啟用的情況下,以上兩種情況都會返回空數(shù)據。
  • support-methods-arguments: 是否支持通過Mapper接口參數(shù)來傳遞分頁參數(shù),默認值false。設置為true時,PageHelper會從查詢方法的參數(shù)值中自動根據配置的字段取值,進行分頁。
  • params: 用于從對象中根據屬性名取值,可以配置pageNum, pageSize, count, pageSizeZero, reasonable等參數(shù)。這里的count=countSql表示在執(zhí)行分頁查詢時,會使用countSql作為計算總數(shù)的SQL。

 三、在代碼中使用 PageHelper

1.簡單分頁查詢

假設我們有一個用戶表(user),要查詢并分頁展示用戶信息。首先,在對應的 Mapper 接口中定義查詢方法:

import com.example.entity.User;
import java.util.List;
public interface UserMapper {
    @Select("SELECT * FROM user")
    List<User> selectAllUsers();
}

然后,在 Service 層或調用 Mapper 的地方使用 PageHelper 進行分頁查詢,示例代碼如下:

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.example.mapper.UserMapper;
import com.example.entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService {
    @Autowired
    private UserMapper userMapper;
    public PageInfo<User> getUserList(int pageNum, int pageSize) {
        // 設置分頁參數(shù),pageNum為當前頁碼,pageSize為每頁顯示的記錄數(shù)
        PageHelper.startPage(pageNum, pageSize);
        // 執(zhí)行查詢
        List<User> userList = userMapper.selectAllUsers();
        // 使用PageInfo對查詢結果進行包裝,返回包含分頁信息的對象
        return new PageInfo<>(userList);
    }
}

在上述代碼中,PageHelper.startPage(pageNum, pageSize)方法用于設置分頁參數(shù),告訴 PageHelper 要查詢第幾頁以及每頁顯示多少條記錄。然后執(zhí)行查詢操作,PageHelper 會自動對查詢語句進行分頁處理,最后將查詢結果包裝成PageInfo對象返回。PageInfo對象包含了分頁相關的各種信息,如總記錄數(shù)、總頁數(shù)、當前頁碼、每頁記錄數(shù)等,方便在前端進行分頁展示和相關邏輯處理。

 2.帶條件的分頁查詢

 如果查詢需要帶條件,例如根據用戶姓名進行模糊查詢并分頁。首先在 Mapper 接口中定義帶條件的查詢方法:

import com.example.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@Mapper
public interface UserMapper {
    @Select("SELECT * FROM user WHERE user_name LIKE #{name}")
    List<User> selectUsersByName(@Param("name") String name);
}

在 Service 層實現(xiàn)帶條件的分頁查詢,代碼如下:

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.example.mapper.UserMapper;
import com.example.entity.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class UserService {
    @Autowired
    private UserMapper userMapper;
    public PageInfo<User> getUserListByName(String name, int pageNum, int pageSize) {
        // 設置分頁參數(shù)
        PageHelper.startPage(pageNum, pageSize);
        // 執(zhí)行帶條件的查詢
        List<User> userList = userMapper.selectUsersByName("%" + name + "%");
        // 返回分頁信息對象
        return new PageInfo<>(userList);
    }
}

 這樣我們就能簡單的使用pageHelper的分頁功能 ,詳細的使用可以參考文檔如何使用分頁插件

到此這篇關于Springboot整合mybatis-plus使用pageHelper進行分頁的文章就介紹到這了,更多相關Springboot整合mybatis-plus分頁內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • spring aop之@AfterReturning不生效問題及解決

    spring aop之@AfterReturning不生效問題及解決

    這篇文章主要介紹了spring aop之@AfterReturning不生效問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • 使用Java進行驗證郵箱是否有用

    使用Java進行驗證郵箱是否有用

    在現(xiàn)代互聯(lián)網應用中,郵箱驗證是一個常見的需求,本文將詳細介紹如何使用Java實現(xiàn)郵箱驗證功能,感興趣的小伙伴可以跟隨小編一起學習一下
    2025-01-01
  • Java套接字(Socket)網絡編程入門

    Java套接字(Socket)網絡編程入門

    這篇文章主要介紹了Java套接字(Socket)網絡編程入門,Socket可以理解為是對TCP/IP協(xié)議的抽象,需要的朋友可以參考下
    2015-10-10
  • Java 坐標系相互轉換方式

    Java 坐標系相互轉換方式

    這篇文章主要介紹了Java中的坐標系相互轉換方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • springcloud gateway聚合swagger2的方法示例

    springcloud gateway聚合swagger2的方法示例

    這篇文章主要介紹了springcloud gateway聚合swagger2的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Spring?boot整合jsp和tiles模板示例

    Spring?boot整合jsp和tiles模板示例

    這篇文章主要介紹了Spring?boot整合jsp模板和tiles模板的示例演示過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-03-03
  • Spring測試 其實很簡單

    Spring測試 其實很簡單

    這篇文章主要為大家詳細介紹了Spring測試,其實很簡單,揭開集成測試神秘的面紗,感興趣的小伙伴們可以參考一下
    2016-07-07
  • 一文掌握maven??filtering標簽

    一文掌握maven??filtering標簽

    這篇文章主要介紹了maven??filtering標簽,本文通過三種方法給大家講解maven?filtering標簽,結合示例代碼給大家介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • Java使用redisson實現(xiàn)分布式鎖的示例詳解

    Java使用redisson實現(xiàn)分布式鎖的示例詳解

    這篇文章主要為大家詳細介紹了在Java項目中使用redisson實現(xiàn)分布式鎖,文中的示例代碼講解詳細,具有一定的學習價值,需要的可以參考一下
    2023-07-07
  • 詳解Spring Boot 目錄文件結構

    詳解Spring Boot 目錄文件結構

    這篇文章主要介紹了Spring Boot 目錄文件結構的相關資料,文中示例代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07

最新評論

潮州市| 仁寿县| 灵台县| 西和县| 嵩明县| 霍城县| 鄱阳县| 阜平县| 阳城县| 长寿区| 许昌市| 石屏县| 葫芦岛市| 渑池县| 万盛区| 阿图什市| 汉中市| 康马县| 治县。| 平安县| 铁岭市| 林州市| 科技| 铜川市| 汶上县| 濮阳县| 嘉荫县| 大连市| 巴东县| 化德县| 布拖县| 姜堰市| 清水县| 嘉禾县| 泗水县| 皮山县| 西乌| 东阳市| 加查县| 望谟县| 柳林县|