java中怎么使用mybatis進(jìn)行分頁(yè)查詢

小億
190
2023-08-05 12:40:06

使用MyBatis進(jìn)行分頁(yè)查詢需要使用到兩個(gè)參數(shù):offset和limit。offset表示開(kāi)始查詢的記錄位置,limit表示每頁(yè)查詢的記錄數(shù)量。

  1. 在Mapper接口中定義一個(gè)方法,方法的參數(shù)包括offset和limit:
List<User> getUsersByPage(int offset, int limit);
  1. 在Mapper.xml文件中編寫(xiě)SQL語(yǔ)句,使用limit關(guān)鍵字進(jìn)行分頁(yè)查詢:
<select id="getUsersByPage" resultType="User">
SELECT * FROM user
LIMIT #{offset}, #{limit}
</select>
  1. 在代碼中調(diào)用Mapper接口的方法進(jìn)行分頁(yè)查詢:
int currentPage = 1;  // 當(dāng)前頁(yè)碼
int pageSize = 10;   // 每頁(yè)記錄數(shù)
int offset = (currentPage - 1) * pageSize;  // 計(jì)算偏移量
List<User> userList = mapper.getUsersByPage(offset, pageSize);  // 調(diào)用方法進(jìn)行分頁(yè)查詢

以上代碼中,currentPage表示當(dāng)前頁(yè)碼,pageSize表示每頁(yè)記錄數(shù),offset表示查詢的起始位置。通過(guò)計(jì)算offset和pageSize,可以得到當(dāng)前頁(yè)的起始位置,并調(diào)用Mapper接口的方法進(jìn)行分頁(yè)查詢。

0