滚动

一般结果集只能是向下的,不是滚动的,你要是想让它滚动你得设置才行。


类名或者接口里面有静态的可以。接口里面的属性全部都是public static final,类名/接口名.是属性,这些都是常量。


结果集是你查询到的结果,数据库不是给你一个人玩的吧。在高并发访问的时候很容易出现一些问题。就是你在查的时候可能别人改了。问题:你查的时候别人改了,那就是你查到的是改了的还是查到的是没改了的呢?你得到改还是不改的。


滚动结果集怎么创建?通过设置参数来创建滚动结果集。对于一些特殊需求滚动结果集绝对是有用的。分页:把数据库的某些记录拿出来,数据库里面有100条记录,全显示出来的话一页显示100条,一页显示20条5页就OK了。拿出第3页的数据:把absolute定位到第3页的开始的位置,往下循环20次就OK了,这就是滚动结果集。这个方式是可以做分页的,但是后面不会这么做。这是通用的方案,根本就不需要考虑什么数据库,只要是java支持的数据库就行,因为使用了JDBC。JDBC是跨数据库的。但是这种方案性能太低,我们后面讲分页用的是数据库本身提供的一些分页的函数,它的性能高一些。要是有一天要做一个跨数据库的分页可以这么做。


package cn.itcast.jdbc;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; import cn.itcast.utils.JdbcUtils; //后面开发滚动结果集用的不多,实际开发用的也不多
public class JdbcDemo7 {
public static void main(String[] args) throws SQLException {
//1.得到一个Connection
Connection con= JdbcUtils.getConnectin();
//2.得到一个执行sql语句Statement
Statement st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);//这就代表了一个滚动的可以更新的结果集 //3.执行sql,得到结果集
ResultSet rs = st.executeQuery("select * from user"); //滚动结果集是可以向上向下跑,还可以绝对定位 //4.定位 //游标默认是在第一行上面,那你向上没了。所以是不行的
//你得让这游标往下走才能向上嘛。
rs.absolute(3);//3不是代表id值,代表的是一个绝对的物理行号
//System.out.println(rs.getInt("id") + " " + rs.getString("username") + ""); //rs.afterLast();//afterLast就是直接达到结果集的最后面 最后一行的下面 /* while(rs.previous()){
System.out.println(rs.getInt("id") + " " + rs.getString("username") + "");
}*/ rs.updateString("password","456");//对应哪个列进行修改
rs.updateRow();
//5.关闭
rs.close();
st.close();
con.close();
}
}

day17 13.滚动结果集介绍的更多相关文章

  1. php常用Stream函数集介绍

    php常用Stream函数集介绍 作者: 字体:[增加 减小] 类型:转载 时间:2013-06-24   本篇文章是对php中的常用Stream函数集进行了详细的分析介绍,需要的朋友参考下     ...

  2. JDBC入门(2)--- ResultSet之滚动结果集

    一.ResultSet之滚动结果集 ResultSet表示结果集,它是一个二维的表格.ResultSet内部维护一个行光标(游标),ResultSet提供了一系列的方法来移动游标: void befo ...

  3. SharePoint 2013 术语和术语集介绍

    托管元数据是一个集中管理的术语的分层集合,我们可以定义术语和术语集,然后将其用作 SharePoint Server 2013 中项目的属性.简单的说,术语是一个可与 SharePoint Serve ...

  4. Apache Commons 工具集介绍

    Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动.下面是我这几年做开发过程中自己用过的工具类做简单介绍. 组件 功能介绍 BeanUtils 提供了对于 ...

  5. MySQL中间件之ProxySQL(13):ProxySQL集群

    返回ProxySQL系列文章:http://www.cnblogs.com/f-ck-need-u/p/7586194.html ProxySQL有原生的集群功能,但是这个原生的集群功能还正在试验阶段 ...

  6. Percona Toolkit工具集介绍

    部署mysql工具是一个非常重要的部分,所以工具的可靠性和很好的设计非常重要.percona toolkit是一个有30多个mysql工具的工具箱.兼容mysql,percona server,mar ...

  7. 探索Redis设计与实现13:Redis集群机制及一个Redis架构演进实例

    本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...

  8. ProxySQL(13):ProxySQL集群

    文章转载自:https://www.cnblogs.com/f-ck-need-u/p/9362822.html ProxySQL有原生的集群功能,但是这个原生的集群功能还正在试验阶段.本文会详细介绍 ...

  9. Java 集合系列13之 WeakHashMap详细介绍(源码解析)和使用示例

    概要 这一章,我们对WeakHashMap进行学习.我们先对WeakHashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用WeakHashMap.第1部分 WeakHashMap介绍 ...

随机推荐

  1. MVC3 学习总结

        1.项目文件结构 controllers,views 2.Model特性实现模型的客户端和服务端的验证   1)自带特性   2)扩展特性,或者重写特性   3.实现MVC filter 的类 ...

  2. js设计模式理解干货

    构造函数本身就是一个函数,只不过该函数是出于创建对象的目的而定义的. 创建Object实例的两种方式: new 操作符 var person = new Object(); person.name = ...

  3. 清北学堂(2019 5 1) part 4

    今天讲数论 1.进制问题(将n转换成k进制数): 1.方法:短除法 将n/k,保存,将商当做新的n,将余数保存,直到商为0,将余数(包括0),倒序输出,即得n的k进制数 2.关于高精四则运算(我本以为 ...

  4. iostream,iostream.h差异

    1. 不加.h的是现在C++中规定的标准,目的在于使C++代码用于移植和混合嵌入时不受扩展名.h的限制, 避免因为.h而造成的额外的处理和修改而加.h的是c语言的用法,但是在c++中也支持这种用法, ...

  5. eclipse提交Git时忽略文件

    为了避免每次使用都有百度查找,自己保存一份,方便使用. 实现方式: Eclipse切换到Navigator视图,找到.gitignore文件(如果是maven项目,一般找作为modules的项目的.g ...

  6. uva10815(set的应用)

    紫书例题,这道题的例程让我长了知识.以前没有用过cctype和stringstream相关的东西.很实用,值得学习. #include <cctype>的函数 c++中应该是#includ ...

  7. Xcode9 修改工程名(含cocopods)

    由于需要现在要更改包名,但是在网上找了N多资料都比较老,16年的资料却是残缺不全,尤其 ios10 出了 .entitlement  的机制 ,很多琐碎的小细节 很容易忘记.所以我自己总结了一篇, 环 ...

  8. C中的时间函数的用法

    C中的时间函数的用法    这个类展示了C语言中的时间函数的常用的用法. 源代码: #include <ctime>#include <iostream> using name ...

  9. an easy problem(贪心)

    An Easy Problem Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 8333   Accepted: 4986 D ...

  10. nginx 400

    做服务器nginx配置的时候有出现过 400 Bad Request  服务器无法理解请求的格式,客户端不应当尝试再次使用相同的内容发起请求.