如何将ResultSet从服务器传递到客户端



我想将ResultSet从服务器传递到客户端,然后将我的所有值放在JTable中(它已经在客户端中了)。我想使用JSonObject,但我不明白是必须序列化它才能发送它,还是必须直接将它发送到客户端。是使用JSonObject更好还是有其他方法?

通过TCP连接发送对象是可能的(而且相当容易)。然而,所述对象必须是implements Serializable. ResultSet是接口并且不扩展Serializable的类的实例。

如果ResultSet扩展了Serializable(以及为什么它没有显示在第二个链接中的原因),那么它可以通过ObjectOutputStream.发送。如果它是一个类,而不是一个接口,它可以被扩展(假设它不是最终类,并且它至少有一个非私有构造函数),然后扩展可以实现Serializable.。同样,情况并非如此。

因此,您必须从服务器上的ResultSet读取值,然后发送它们,而不是发送ResultSet本身。

您永远不应该向客户端返回ResultSet,客户端不应该知道在服务器上完成了什么类型的处理(在这种情况下,我们可以知道完成了某种DB操作,抽象点丢失了)。更好的方法是将ResultSet转换为一个集合,并将该集合(如ArrayList)返回给客户端。

相关内容

  • 没有找到相关文章

最新更新