Java调用oracle分页查询的代码
时间: 2023-10-19 22:09:07 浏览: 81
以下是Java调用Oracle分页查询的代码示例:
```java
public List<User> getUsers(int pageNum, int pageSize) {
try {
Connection conn = getConnection(); // 获取数据库连接
String sql = "SELECT * FROM user ORDER BY id";
PreparedStatement pstmt = conn.prepareStatement(sql, ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
ResultSet rs = pstmt.executeQuery();
int start = (pageNum - 1) * pageSize;
int end = start + pageSize;
List<User> userList = new ArrayList<>();
int rowNum = 0;
while (rs.next()) {
rowNum++;
if(rowNum > start && rowNum <= end) {
User user = new User();
user.setId(rs.getInt("id"));
user.setName(rs.getString("name"));
user.setAge(rs.getInt("age"));
userList.add(user);
}
}
rs.close();
pstmt.close();
conn.close();
return userList;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
```
该方法传入两个参数:pageNum为当前页码,pageSize为每页显示的数据条数。方法内部通过获取数据库连接,执行sql语句,使用ResultSet的游标进行分页查询,并将查询结果封装成User对象,最终返回一个List<User>类型的数据。需要注意的是,需要在sql语句中加上ORDER BY子句,保证结果集的顺序是确定的。
阅读全文