2011-08-22 47 views
0

我可能有一些设计概念错误。如果我有一个10000行的表格意味着我会有10000个对象?Hibernate:导致内存泄漏的持久对象

我问,因为我得到了泄漏,并且使用Jconsole和Eclipse MTA,它向我显示的唯一问题是一个ArrayList,它似乎充满了从Hibernate中检索到的对象。

我应该只是增加堆大小?或者我打算怎么做?

UPDATE:本表反映了一个文件系统结构和purpouse是检索一个给定根的所有孩子的,所以我开始与100行(根文件夹),然后搜索儿童的和grandchilds ...

很明显,我不会同时与所有人一起工作,会喜欢“保持当前文件夹树保持并在切换根目录时将其杀死”

+1

是的。不,也许。什么? –

+0

关闭Hibernate中的缓存。 –

回答

2

如果您需要内存中的10000个对象在相同时间,然后增加你的堆大小。如果您需要全部10000个,但不一定需要同时重写您的代码以分批加载和处理它们。如果您只需要一些对象,则优化一些查询以仅加载所需的内容。如果您想要更好的帮助,请更好地解释您的要求

+0

真棒解释,我更新了我的问题。是的,我一直不需要10000,我是如何分批加载它们的? – javaNoober