什么是 RowSet 对象,使用 JDBC 程序进行解释?
RowSet 是对 ResultSet 对象的包装。它可以连接或从数据库断开连接,并且可以序列化。它通过设置属性来维护一个 JavaBean 组件。您可以在网络上传递 RowSet 对象。默认情况下,RowSet 对象是可滚动的可更新的,它用于让 ResultSet 对象可滚动和可更新。
您可以使用
RowSetProvider.newFactory().createJdbcRowSet() 方法获取 RowSet。
示例
假设我们在数据库中有一个名为 dataset 的表,如下所示
+--------------+-----------+ | mobile_brand | unit_sale | +--------------+-----------+ | Iphone | 3000 | | Samsung | 4000 | | Nokia | 5000 | | Vivo | 1500 | | Oppo | 900 | | MI | 6400 | | MotoG | 4360 | | Lenovo | 4100 | | RedMi | 4000 | | MotoG | 4360 | | OnePlus | 6334 | +--------------+-----------+
以下 JDBC 示例创建了一个 RowSet 对象,使用该对象检索名为 dataset 的表的的内容
import java.sql.DriverManager;
import javax.sql.RowSet;
import javax.sql.rowset.RowSetProvider;
public class RowSetExample {
public static void main(String args[]) throws Exception {
//Registering the Driver
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
//Creating the RowSet object
RowSet rowSet = RowSetProvider.newFactory().createJdbcRowSet();
//Setting the URL
String mysqlUrl = "jdbc:mysql:///TestDB";
rowSet.setUrl(mysqlUrl);
//Setting the user name
rowSet.setUsername("root");
//Setting the password
rowSet.setPassword("password");
//Setting the query/command
rowSet.setCommand("select * from Dataset");
System.out.println("Contents of the table");
while(rowSet.next()) {
System.out.print("Brand: "+rowSet.getString(1)+", ");
System.out.print("Sale: "+rowSet.getString(2));
System.out.println("");
}
}
}输出
Contents of the table Brand: Iphone, Sale: 3000 Brand: Samsung, Sale: 4000 Brand: Nokia, Sale: 5000 Brand: Vivo, Sale: 1500 Brand: Oppo, Sale: 900 Brand: MI, Sale: 6400 Brand: MotoG, Sale: 4360 Brand: Lenovo, Sale: 4100 Brand: RedMi, Sale: 4000 Brand: MotoG, Sale: 4360 Brand: OnePlus, Sale: 6334
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP