1向瘦客户端传递数据
使用 CachedRowSet
对象的主要原因之一是要在应用程序的不同组件之间传递数据。因为 CachedRowSet
对象是可序列化的,所以可使用它(举例来说)将运行于服务器环境的企业 JavaBeans 组件执行查询的结果通过网络发送到运行于 web 浏览器的客户端。
由于 CachedRowSet
对象是非连接的,所以和具有相同数据的 ResultSet
对象相比更为简洁。因此,它特别适于向瘦客户端(如 PDA)发送数据,这种瘦客户端由于资源限制或安全考虑而不适于使用 JDBC 驱动程序。所以 CachedRowSet
对象可提供一种“获取各行”的方式而无需实现全部 JDBC API。
2 滚动和更新
CachedRowSet
对象的第二个主要用途是为那些本身不提供滚动和更新的 ResultSet
对象提供这些功能。换句话说,当 DBMS 不提供对滚动和更新的完全支持时,可使用 CachedRowSet
对象扩充启用 JDBC 技术的驱动程序(以下称为“JDBC 驱动程序”)的功能。要使不可滚动和只读的 ResultSet
对象变得可滚动和可更新,程序员只需创建一个使用该 ResultSet
对象的数据所填充的 CachedRowSet
对象即可。以下代码片断演示了这一过程,其中 stmt
是一个 Statement
对象。
ResultSet rs = stmt.executeQuery("SELECT * FROM EMPLOYEES");
CachedRowSetImpl crs = new CachedRowSetImpl();
crs.populate(rs);
现在对象 crs
与对象 rs
一样,也包含了取自表 EMPLOYEES
的数据。不同的是 crs
的指针可以向前、向后移动,或者移动到特定行,即使 rs
的指针只能向前移动也是如此。此外,即使 rs
是不可更新的,crs
也将是可更新的,因为在默认情况下,CachedRowSet
对象是可滚动和可更新的。
总之,可将 CachedRowSet
对象简单地看成是一个非连接的行集合,这些行将缓存在数据源外部。由于它比较小并且是可序列化的,所以它可以轻松地通过导线发送,并且非常适合于向瘦客户端发送数据。但是 CachedRowSet
对象也有局限性:它的大小限制在它一次可在内存中存储的数据量范围内。
3 获得通用数据访问
CachedRowSet
类的另一个优势在于它能够从关系数据库以外各种数据源检索并存储数据。可以实现 rowset 的 reader 读取任何表格数据源(包括电子表格或平面文件)的数据,并用该数据填充其 rowset。因为 CachedRowSet
对象及其元数据都可以从头创建,所以充当 rowset 工厂的组件可以使用此功能来创建一个包含非 SQL 数据源数据的 rowset。但是,大部分情况下,希望 CachedRowSet
对象包含使用 JDBC API 从 SQL 数据库中获取的数据。
分享到:
相关推荐
本文内容包括:RowSet简介类继承结构实验环境使用CachedRowSet使用WebRowSet使用FilteredRowSet使用JdbcRowSet使用JoinRowSet结束语下载参考资料C#提供了DataSet,可以将数据源中的数据读取到内存中,进行离线操作,...
sun.jdbc.rowset的jar包,2000年的老包。不过有些老项目需要。 包括sun.jdbc.rowset.CachedRowSet。
使用JdbcRowSet和CachedRowSet的例子,大家一起参考学习
第2部分 在两层客户/服务器结构中使用JDBC和SQL 第5章 使用JDBC和SQL创建表 5.1 创建数据库 5.2 使用表 5.2.1 记录和字段、行和列 5.2.2 SQL数据类型 5.2.3 完整性约束 5.3 创建表 5.4 使用JDBC创建表 ...
第2部分 在两层客户/服务器结构中使用JDBC和SQL 第5章 使用JDBC和SQL创建表 5.1 创建数据库 5.2 使用表 5.2.1 记录和字段、行和列 5.2.2 SQL数据类型 5.2.3 完整性约束 5.3 创建表 5.4 使用JDBC创建表 ...
第2部分 在两层客户/服务器结构中使用JDBC和SQL 第5章 使用JDBC和SQL创建表 5.1 创建数据库 5.2 使用表 5.2.1 记录和字段、行和列 5.2.2 SQL数据类型 5.2.3 完整性约束 5.3 创建表 5.4 使用JDBC创建表 ...
第2部分 在两层客户/服务器结构中使用JDBC和SQL 第5章 使用JDBC和SQL创建表 5.1 创建数据库 5.2 使用表 5.2.1 记录和字段、行和列 5.2.2 SQL数据类型 5.2.3 完整性约束 5.3 创建表 5.4 使用JDBC创建表 ...
引入了javax.sql.rowset接口, 如CachedRowSet 和 WebRowSet. 可以在 JDK 1.2, 1.3, 和 1.4下使用.
包含ocrs12.jar 引入了javax.sql.rowset接口, 如CachedRowSet 和 WebRowSet. 可以在 JDK 1.2, 1.3, 和 1.4下使用.
第0章 JSP程序设计课程介绍 4 第1章 JSP简介 5 1.1 软件编程体系 5 1.1.1软件编程体系简介 5 ...7.7基于CACHEDROWSET分页显示记录 211 7.8常见数据库的连接 218 7.8.1连接Oracle数据库 218 7.8.2连接MySql数据库 220
此外,本书还介绍了JdbcRowSet、CachedRowSet、WebRowSet、JoinRowSet和FilteredRowSet对象的标准实现。 本书对JDBCAPI中的每个类和接口(从Array到XADataSource)都提供了简洁但完整的信息。每个类不但包含用例的概述...
此外,本书还介绍了JdbcRowSet、CachedRowSet、WebRowSet、JoinRowSet和FilteredRowSet对象的标准实现。 本书对JDBCAPI中的每个类和接口(从Array到XADataSource)都提供了简洁但完整的信息。每个类不但包含用例的概述...
此外,本书还介绍了JdbcRowSet、CachedRowSet、WebRowSet、JoinRowSet和FilteredRowSet对象的标准实现。 本书对JDBCAPI中的每个类和接口(从Array到XADataSource)都提供了简洁但完整的信息。每个类不但包含用例的概述...
2.5 JSP中Session的使用 34 2.6 JSP中forward的使用 36 2.7 JSP运行时错误处理与应该注意的六个常见问题 37 2.8 JSP小实例 38 2.8.1实例1(在JSP中定义函数) 38 2.8.2实例2(获取各种CGI环境变量...
10.3 CachedRowSet 包 10.4 数据库连接缓冲池 10.5 JNDI 和RowSet 10.6 本章小结 第四部分 JSP 网络程序设计 第11 章 JSP 网络程序开发 11.1 配置服务器 11.2 SMTP 服务 11.3 FTP 服务 11.4 News 服务 11.5 Java ...
10.3 CachedRowSet 包 10.4 数据库连接缓冲池 10.5 JNDI 和RowSet 10.6 本章小结 第四部分 JSP 网络程序设计 第11 章 JSP 网络程序开发 11.1 配置服务器 11.2 SMTP 服务 11.3 FTP 服务 11.4 News 服务 11.5 Java ...
在jdk1.5上用spring管理数据,部署到jdk1.4上,说CachedRowSet有问题,寻遍方法,最后得一rowset对jdk1.4里的进行覆盖,得的rowset.jar还需要进行修改,于是修改好,放到项目的lib中,成功!想到需要帮助的人们,...
CachedRowset 实现扩展了参考实现以包含一些所需的新功能:即使某些列为空,insertRow() 也能工作,setReadOnly(column),addColumnd()。 此外,我们将构建实施。