RowSet】的更多相关文章

离线RowSet 如果直接使用ResultSet, 程序在得到ResultSet记录之后需要立即使用,否则一旦关闭Connection就不再可用,要解决这种情况要么将ResultSet的结果转换成JavaBean存储,要么在Connection关闭之前完成所有操作,不过这些办法都不太方便. 但是通过离线的RowSet却能很好地解决这个问题.RowSet可以将ResultSet的结果集封装成RowSet对象,存储在内存中进行数据操作,而Connection则可以断开.直到数据操作完成之后,重新再连…
RowSet概念 在C#中,提供了一个DataSet,可以把数据库的数据放在内存中进行离线操作(读写),操作完成之后再同步到数据库中去,Java中则提供了类似的功能RowSet. RowSet接口继承自ResultSet接口.与ResultSet相比,RowSet默认是可滚动.可更新.可序列化的结果集,可以作为JavaBean来方便地在网络上传输,用于同步两端数据.对于离线RowSet而言, 程序从创建RowSet时就已经把数据load进内存,因此可以更好地利用内存性能,降低数据库服务器的负载,…
ResultSet是使用Jdbc编程的人入门和常用的操作数据库的类,自 JDK1.4开始,易于使用RowSet接口被引入.RowSet 接口扩展了标准java.sql.ResultSet接口.RowSetMetaData 接口扩展了java.sql.ResultSetMetaData 接口.因此,熟悉 JDBCAPI 的开发人员必须学习少数几个新 API 才能使用rowset.此外,与 JDBC ResultSet对象配套使用的第三方软件工具也可以方便地用于rowset.但是在JDK1.4中,只…
在java主要涉及到数据开发的过程中,我们会和数据库打交道很多,其中使用了数据集比如ResultSet和RowSet,经常使用两种,还有其它的一些,那么这两种的主要区别是什么呢?我们先来看它们引入的方式,ResultSet:import java.sql.ResultSet;  RowSet: import javax.sql.RowSet; 典型的区别是引入的路径不一样: java和javax都是Java的API(Application Programming Interface)包,java…
这几天给项目做性能压力测试,发现一个方法压力200之后就会把整个系统弄停掉.仔细检查发现是开发人员调用数据库的写法有问题.用的是spring的jdbcTemplate,在使用回调的时候,在回调里又做了数据库的查询.只要把这个查询写在回调外执行就没有性能问题,写在里面压力大的时候马上出问题. 查看spring的源代码发现,这两种写法唯一的区别就是,写在回调里面的时候,数据库连接未关闭就开启一个新的连接进行操作,写在外面则是先关闭了的. 造成数据库端报错ORA-12519,数据库端给不出可用的连接来…
import java.io.FileInputStream; import java.util.Properties; import javax.sql.rowset.JdbcRowSet; import javax.sql.rowset.RowSetFactory; import javax.sql.rowset.RowSetProvider; public class JdbcRowSetTest { private String driver; private String url; p…
RowSet行集 @author ixenos 应用背景 1.基于结果集的缺点:在与用户的整个交互过程中,必须始终与数据库保持连接 后果:当用户长时间离开时,数据库连接长时间被占用,而这属于稀缺资源: 解决:使用行集RowSet,RowSet继承了ResultSet接口,却无需始终保持与数据库的连接~ 2.结果集不便于移动,因为数据结构复杂,且依赖于连接 解决:使用行集RowSet,RowSet适用于将查询结果移动到复杂应用的其他层,或者其他设备当中 3.因为RowSet继承了ResultSet…
数据库的查询操作会得到一系列数据,JDBC API也提供了相关对象来接收查询结果集. 一.ResultSet java.sql.ResultSet接口表示数据库查询的结果集. JDBC提供以下连接方法来创建具有所需ResultSet的语句: createStatement(int RSType, int RSConcurrency); prepareStatement(String SQL, int RSType, int RSConcurrency); prepareCall(String s…
这是由于链接的数据库服务器的版本与本地数据库服务器不一致,有人说要升到sp3,sp4,然后在执行什么语句之类的 我觉得太繁琐了,通过网上查询之后看到可以这么做: USE master GRANT EXEC ON sp_tables_info_rowset_64 TO PUBLIC…