java:为什么ResultSet无法序列化?

经过数小时的搜索,我终于意识到java.sql.ResultSet无法序列化,也没有办法。我尝试添加到列表中,作为Serializable对象和其他内容中的实例变量,但事实证明这只是幼稚而绝望的尝试。我试图使用的实现的RowSet像对CachedRowSetImpl是序列化,但它们增加了响应时间,最有可能是因为他们迭代ResultSet中。最重要的是,除非选择迭代ResultSet,否则您将无法通过网络发送其中包含的数据。

我知道必须迭代并将内容添加到数据模型对象和列表中的替代方法,但是我非常想知道其背后的原因是什么?当时的Java开发人员在想什么?

回答:

据我所知,ResultSet并不“包含”数据。如果调用http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#next(),则ResultSet将从底层(JDBC)连接到数据库的数据获取。

如果ResultSet被序列化并传输到另一台计算机,则这将是不可能的。那里连接将不可用。

以上是 java:为什么ResultSet无法序列化? 的全部内容, 来源链接: utcz.com/qa/412730.html

回到顶部