我有一个 java 类层次结构,如下所示。
public class Results{
private String _query;
private CachedRowSetImpl _resultSet;
//... getter setters
}
我已经连载了List<Results> resultList
,考虑这个 List 包含 100 个项目,每个 _resultSet 有超过 1000 条记录。我有 2 个问题,
- 当我们反序列化这个对象时,我的应用程序内存将容纳整个对象,它会产生堆大小问题吗?
- 如果它会造成资源问题,当我反序列化时,我可以忽略
_resultSet
吗?被反序列化意味着仅查询就足够了吗?
如果我的理解有误,请纠正我。
最佳答案
如果你实现了 Externalizable
,你的 readExternal
看起来有点像:
public void readExternal(ObjectInput in) throws IOException,
ClassNotFoundException {
_query=(String) in.readObject();
if(//yourCondition){
_resultSet=(CachedRowSetImpl) in.readObject();
}
}
关于java - 部分反序列化一个复杂的java对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29691984/