0

当我尝试使用 openJPA 拉回一棵巨大的对象树时出现内存不足错误...我能做些什么来缓解这种情况...这是我的一些方法...

我搜索一个实体......这个实体应该有与之关联的子实体(它们本质上是同一个实体)......所以我包含一个子实体列表......

private List<Organization> childOrgsTree = new ArrayList<Organization>();

所以实体是一个组织,我包含了一个包含这个实体的组织列表......现在我有一个命名的本地查询,它获取这个特定实体的每个孩子。我递归地遍历每个孩子并找到该实体的每个孩子......可能会调用相同命名的本机查询数千次。递归构造子树对象。现在,这似乎可行,直到我遇到内存不足的异常......我有点困惑如何解决这个小问题?我显然可以增加分配给进程的内存,但我担心这将是一个创可贴。有任何想法吗?

4

1 回答 1

0

我有点困惑如何解决这个小问题?

您有两个选择,在应用程序代码中保留更少的内存,或者增加 JVM 堆大小。

于 2012-07-03T16:32:01.400 回答