java语言实现分页查询功能

Java语言实现分页查询需要使用到数据库查询语句中的LIMIT关键字,和Java代码中的分页逻辑。下面是一个简单的示例代码:

假设有一个数据库表名为“user”,有字段“id”和“name”:
CREATE TABLE user (
  id int(11) NOT NULL,
  name varchar(50) DEFAULT NULL,
  PRIMARY KEY (id)
);

实现Java代码中的分页逻辑,例如定义一个方法:
public List getUsers(int pageNum, int pageSize) {
 // 计算起始索引
 int startIndex = (pageNum - 1) * pageSize;
 // 执行查询语句
 String sql = "SELECT id, name FROM user LIMIT ?, ?";
 List userList = new ArrayList<>();
 try (Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "user", "password");
  PreparedStatement ps = conn.prepareStatement(sql)) {
 ps.setInt(1, startIndex);
 ps.setInt(2, pageSize);
 ResultSet rs = ps.executeQuery();
 while (rs.next()) {
     int id = rs.getInt("id");
     String name = rs.getString("name");
     User user = new User(id, name);
     userList.add(user);
 }
 } catch (SQLException e) {
 e.printStackTrace();
 }
 return userList;
}

在该方法中,首先计算起始索引,然后执行带有LIMIT关键字的查询语句,将结果集封装为Java对象放入List中返回。

在调用该方法时,传入页码和每页大小即可实现分页查询: List userList = getUsers(2, 10); // 查询第2页,每页10条记录 注意:在实际应用中,还需要考虑分页查询时的异常处理、分页参数的合法性校验等问题。