之前的文章 java springboot整合MyBatis做數據庫查詢操作操作了springboot整合MyBatis,然后簡單做了個按id查詢的操作
那么 我們按上文搭建起的環(huán)境繼續(xù)
我們直接在staffDao接口中聲明一個分頁函數
@Select("select * from staff limit #{page},#{pageSize}")
List<staff> getPage(@Param("page") int page, @Param("pageSize") int pageSize);
這里 我們直接在 sql語句中寫limit 分頁邏輯 參數是方法接收的 這個函數接收兩個參數 page 要查第幾頁 pageSize 每頁展示多少條
注意 這個函數 我們需要三個依賴包
import org.apache.ibatis.annotations.Param;
import java.util.List;
和我們自己寫的這個 staff 屬性類的包
然后 我們在測試類編寫如下代碼
System.out.println(staffDao.getPage(0,2));
這個點確實還是需要注意 我們這個分頁的邏輯 是從零開始的
0就代表查詢第一頁 然后 每頁展示 2條數據
到數據庫看一下我們的表
代碼運行結果如下
可以看到 它確實把前兩條查出來了
那如果 我們想帶著條件分頁查詢
可以看到 我們age 第二條和第三天都是 大于30的 那么 我們就以 大于30的age為條件 這樣寫
在 staffDao 接口中新添加一個函數
參考代碼如下
@Select("select * from staff where age >= #{age} limit #{start},#{pageSize}")
List<staff> getAgePage(@Param("start") int start, @Param("pageSize") int pageSize,int age);
這里 我們直接寫where就好了 where 和 limit 并不影響
接收三個參數 start當前頁 pageSize每頁展示多少條 age年齡條件
然后 我們在測試類中調用文章來源:http://www.zghlxwxcb.cn/news/detail-497323.html
System.out.println(staffDao.getAgePage(0,2,30));
我們調用了getAgePage 0 代表查第一頁 2 每頁展示 2條 30 按where 那就是 age 大于等于 30
運行結果如下
也是沒有任何問題文章來源地址http://www.zghlxwxcb.cn/news/detail-497323.html
到了這里,關于java springboot整合MyBatis實現分頁查詢以及帶條件的分頁查詢的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!