我的代码如下:
int [] keyCols = {1};
WebRowSet sender = new WebRowSetImpl();
sender.setUsername("root");
sender.setPassword("root");
sender.setUrl("jdbc:mysql://localhost:3306/jdbc");
sender.setCommand("select * from bank");
sender.setKeyColumns(keyCols);
int size1 = sender.size();
System.out.println(size1);
sender.execute();
FileWriter fw=new FileWriter("bank.xml");
sender.writeXml(fw);
fw.flush();
fw.close();
WebRowSet receiver = new WebRowSetImpl();
receiver.setUsername("root");
receiver.setPassword("root");
receiver.setUrl("jdbc:mysql://localhost:3306/jdbc");
FileReader fr=new FileReader("bank.xml");
receiver.readXml(fr);
int size2 = receiver.size();
System.out.println(size2);
if(size1 == size2)
{
System.out.print("WebRowSet serialized and ");
System.out.println("deserialized properly");
}
else
{
System.out.print("Error....serializing/");
System.out.println("deserializing the WebRowSet");
}
我收到“错误....序列化/”“反序列化 WebRowSet”的错误消息
出现此错误消息的原因是 size1 的值为 0,而 size2 为 17。我的表“bank”中的行数为 17,所以我了解 size2 的值,但为什么我得到 size1 的“0”。
另一个问题是我没有创建任何名为“bank.xml”的文件,那么为什么我没有收到任何错误说“不存在这样的文件”?