jdbc 的resultset有三种cursor类型:
ResultSet.TYPE_FORWARD_ONLY:表示cursor只能向前移动,absolute first last等方法无效。
ResultSet.TYPE_SCROLL_INSENSITIVE:表cursor可以自由移动,但对于修改不敏感
ResultSet.TYPE_SCROLL_SENSITIVE:表cursor可以自由移动,但对于修改敏感
TYPE_SCROLL_INSENSITIVE 如何实现:
jdbc驱动在实现TYPE_SCROLL_INSENSITIVE会将sql语句的结果存在JVM的cache中,(数据库的cursor是不支持absolute之类的操作的),absolute first last等方法其实就是在缓存中来定位而已,由于数据已经全部取到jvm端,此时再去修改数据库,得到的数据是不会改变的。
TYPE_SCROLL_SENSITIVE:与TYPE_SCROLL_INSENSITIVE的区别在于,不是缓存结果,而是缓存rowid,需要用到时再去查询,这样就会造成二次查询
如果未读取数据,将表的row删除,是读取不到的,
Driver driver = new oracle.jdbc.driver.OracleDriver();
DriverManager.registerDriver(driver);
Connection conn = DriverManager.getConnection(url,user,password);
conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED);
conn.setAutoCommit(false);
PreparedStatement p1 = conn.prepareStatement("select * from test",ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
Thread.currentThread().sleep(10000);//此时更改数据,或者删除行 查看结果
ResultSet rs = p1.executeQuery();
while(rs.next()){
System.out.println(rs.getInt(1)+" "+rs.getString(2));
}
conn.commit();
当如果已经读取到数据,不会再去二次查询
ResultSet rs = p1.executeQuery();
while(rs.next()){
System.out.println(rs.getInt(1)+" "+rs.getString(2));
}
Thread.currentThread().sleep(10000);//修改数据
rs.beforeFirst();
while(rs.next()){
System.out.println(rs.getInt(1)+" "+rs.getString(2));
}
分享到:
相关推荐
jquery tools scrollable demo 自己整理写的备忘小demo
Scrollable的使用与改装,包括状态栏改颜色。 适用于app中的个人主页页面
Scrollable HTML table Source JS and Example
scrollable jquery ui 下载
Scrollable.zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
自己加了点功能,1. 支持iframe内的表格2.支持表格的滚动条在左边并且可配3.表格高度可配 增加参数:doc1(页面document对象,如果想对iframe内的页面产生左右,传入那个页面的document对象),scDir(方向'left'或者right)
只要引用JS就行 但是这种方法不支持 纵向 固定表头和拖动.
https://www.npmjs.com/package/react-native-scrollable-tab-view基础使用:var ScrollableTabView = require('react-native-scrollable-tab-view'); var App = React.createClass({ render() { ...
enhancements such as scrollable result sets and updatable result sets, including support issues under JDK 1.1.x. Chapter 13, "Performance Extensions" This chapter describes Oracle extensions to the ...
ng-scrollable, AngularJS的Superamazing滚动条 滚动AngularJS的Superamazing滚动条:为什么要滚动?因为 Firefox 不支持滚动条样式,或者其他 跨浏览器 选项不支持滚动条样式,所以对于复杂的单一页面应用程序来说...
shinkWrap(boolean)是否由看到的内容决定列表的滚动范围 Expanded 设置可扩展的范围
android ScrollableView
scrollable提供的一系列获取scrollable对象的方法具体使用方式如下: 代码如下:var scrollable=$(“div.scrollable”).scrollable(); //alert(scrollable.getConf().prev);//获取配置对象中的prev属性 ...
本文实例讲述了jQuery滚动插件scrollable.js用法。分享给大家供大家参考,具体如下: Scrollable是一个灵活、轻量级用于创建滚动内容的jQuery插件。任何内容(HTML、视频、文件、图片等…)都可以作为一个滚动项。...
Scrollable是一个灵活、轻量级用于创建滚动内容的jQuery插件。任何内容(HTML、视频、文件、图片等...)都可以作为一个滚动项。支持水平与垂直两种滚动方向。用途:滚动效果,可制作分步验证页面
react-native scrollable tab view入门1
安装npm install --save react-scrollable-feed用法 import * as React from 'react'import ScrollableFeed from 'react-scrollable-feed'class App extends React . Component { render ( ) { const items = [ '...
A scrollable, zoomable, and scalable picture box
Scrollable是一个灵活、轻量级 用于创建滚动内容的jQuery插件。任何内容(HTML、视频、文件、图片等...)都可以作为一个滚动项。支持水平与垂直两种滚动方向。
A scrollable, zoomable, and scalable picture box