/**
* 一次只从数据库中查询最大maxCount条记录
* @param sql 传入的sql语句
* @param startNo 从哪一条记录开始
* @param maxCount 总共取多少条记录
*/
public void getData(String sql,int startNo,int maxCount){
Connection conn = ConnectionUtil.getConnection();
try {
// conn.prepareStatement(sql,游标类型,能否更新记录);
// 游标类型:
// ResultSet.TYPE_FORWORD_ONLY:只进游标
// ResultSet.TYPE_SCROLL_INSENSITIVE:可滚动。但是不受其他用户对数据库更改的影响。
// ResultSet.TYPE_SCROLL_SENSITIVE:可滚动。当其他用户更改数据库时这个记录也会改变。
// 能否更新记录:
// ResultSet.CONCUR_READ_ONLY,只读
// ResultSet.CONCUR_UPDATABLE,可更新
PreparedStatement pstat = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
//最大查询到第几条记录
pstat.setMaxRows(startNo+maxCount-1);
ResultSet rs = pstat.executeQuery();
//将游标移动到第一条记录
rs.first();
// 游标移动到要输出的第一条记录
rs.relative(startNo-2);
while(rs.next())
System.out.println(rs.getInt(1));
} catch (SQLException e) {
e.printStackTrace();
}
}
/**
* 从数据库中查询所有记录,然后通过游标来获取所需maxCount条记录
* @param sql 传入的sql语句
* @param startNo 从哪一条记录开始
* @param maxCount 总共取多少条记录
*/
public void getDataFromAll(String sql,int startNo,int maxCount){
Connection conn = ConnectionUtil.getConnection();
try {
PreparedStatement pstat = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet rs = pstat.executeQuery();
rs.first();
rs.relative(startNo-1);
int i = startNo-1;
while(i < startNo + maxCount-1 && !rs.isAfterLast()){
System.out.println(rs.getInt(1));
i++;
rs.next();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
http://www.blogjava.net/supercrsky/articles/221755.html
分享到:
相关推荐
本篇文章将详细介绍如何利用JDBC和游标实现分页查询,并通过两个示例代码进行解析。 1. **游标类型** - ResultSet.TYPE_FORWARD_ONLY:这是默认的游标类型,只能向前遍历结果集,不可滚动,效率较高。 - ...
下面是一个使用`JdbcTemplate`进行游标分页的基本步骤: 1. **创建存储过程**:在数据库中,创建一个存储过程,返回一个游标。这个存储过程应该接受分页参数,如当前页和每页记录数。 2. **定义`...
总结,"jdbc+serlvet分页查询代码"是Java Web开发中一个常见的应用场景,它展示了如何利用JDBC进行数据库操作,以及Servlet如何处理HTTP请求并返回动态生成的页面,同时包含了实现简单分页查询的策略。通过这个示例...
在IT行业中,数据库管理和数据检索是至关重要的环节,...通过编写Action类处理请求,利用Oracle的ROWNUM进行分页查询,并通过JDBC接口与数据库交互,最后通过分页模型类管理和展示数据,从而实现高效、易用的分页功能。
Oracle JDBC分页实现是数据库操作中的一个重要环节,尤其是在处理大量数据时,为了...总之,Oracle JDBC分页实现涉及SQL查询语句的设计和Java代码的配合,合理利用Oracle的特性可以有效地实现高效、灵活的分页功能。
一次只从数据库中查询最大maxCount条记录 * @param sql 传入的sql语句 * @param startNo 从哪一条记录开始 * @param maxCount 总共取多少条记录 */ public void getData(String sql,int startNo,int maxCount){ ...
- **游标处理**:Oracle还支持游标(Cursor)进行分页,这在处理复杂查询时更高效。 - **连接池**:在大型应用中,使用连接池(如C3P0、HikariCP等)管理数据库连接,提高性能和资源利用率。 - **批处理**:如果需要...
**利用游标变量实现分页查询.txt** 游标是PL/SQL中处理单个结果集行的一种方法,它可以用于分页查询。首先,我们需要创建一个游标变量来存储查询结果,然后在循环中按页处理这些结果。以下是一个基本的分页查询示例...
3. **游标分页**: 如果不支持LIMIT或ROWNUM,可以通过保存上次查询的最后一个记录的ID,然后在下次查询时作为条件,以实现分页。 **JDBC事务** 事务是数据库操作的基本单元,确保数据的一致性和完整性。JDBC提供了...
标题中的“jdbc分页实例sqlserver2000”指的是使用Java Database Connectivity (JDBC) API来实现数据库分页查询的示例,特别是在SQL Server 2000这个特定的数据库管理系统上。JDBC是Java中用于与各种类型数据库交互...
本文将深入探讨JDBC(Java Database Connectivity)如何实现分页查询,以供初学者参考。 ### 1. 分页的基本概念 分页是将大量数据分成若干页进行展示的技术。每一页包含一定数量的数据记录,用户可以通过页码或...
总的来说,利用JDBC实现Sybase数据库的分页查询,关键在于巧妙地结合游标、缓存和线程安全,以达到高效和快速的效果。对于大数据场景,这样的方法尤其适用,尤其是在首次加载后,后续翻页几乎可以实现瞬间完成。当然...
可以通过设置`oracle.jdbc.fetchDirection=oracle.jdbc.OracleFetchDirection.FETCH_FORWARD`来控制游标的读取方向,并通过`oracle.jdbc.fetchSize`属性来指定每次获取的行数。 #### 三、通用的最佳实践 除了针对...
总之,Oracle数据库级分页结合Java的JDBC可以有效地处理大数据量的查询,而数据源的使用则有助于优化数据库连接管理,提升整体系统的稳定性和效率。理解并熟练掌握这些技术,对于Java开发者来说是至关重要的。
在Java数据库连接(JDBC)中,分页查询是一种常用的技术,用于从大量数据中提取特定部分,提高应用性能并优化用户体验。"JDBC分页 absolute实现" 主要指的是使用`Statement`或`PreparedStatement`对象的`absolute()`...
JDBC数据分页的实现通常有两种方式:一是通过SQL语句直接实现,二是通过数据库API或者游标(Cursor)来实现。 1. SQL语句实现分页: - MySQL:使用`LIMIT`和`OFFSET`关键字,例如`SELECT * FROM table LIMIT page_...
Java开发之JDBC分页源码详解是指在Java开发中使用JDBC(Java Database Connectivity)来实现数据库的分页查询。下面将详细介绍JDBC分页源码的实现细节。 JDBC分页查询的必要性 在实际开发中,我们经常需要从数据库...
在"源码"这个标签下,我们可以了解到,分页查询的实现往往涉及到数据库操作层的代码,比如Java中的JDBC,ORM框架如MyBatis或Hibernate,它们提供了对分页查询的封装。开发者需要了解这些框架如何设置分页参数,以及...