在Java中手動分頁查詢數據通常是通過在數據庫查詢語句中使用LIMIT和OFFSET關鍵字來實現。以下是一個示例代碼:
```java
// 假設有一個方法用來查詢數據庫中的數據
public List fetchData(int pageNumber, int pageSize) {
int offset = (pageNumber - 1) * pageSize; // 計算偏移量
String sql = "SELECT * FROM table_name LIMIT ? OFFSET ?";
try (Connection conn = DriverManager.getConnection(url, username, password);
PreparedStatement stmt = conn.prepareStatement(sql)) {
stmt.setInt(1, pageSize);
stmt.setInt(2, offset);
ResultSet rs = stmt.executeQuery();
List dataList = new ArrayList<>();
while (rs.next()) {
Data data = new Data();
// 從結果集中讀取數據并設置到data對象中
dataList.add(data);
}
return dataList;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
```
在上面的代碼中,fetchData方法中的pageNumber參數表示要查詢的頁數,pageSize表示每頁的數據條數。在查詢語句中使用LIMIT和OFFSET來限制查詢結果的數量和偏移量,從而實現分頁查詢。最后返回查詢結果的列表。