【发布时间】:2012-02-09 16:33:41
【问题描述】:
我主要使用 Hibernate 来减少我的应用程序的内存消耗,因为我可以将数据存储在数据库中而不是内存中。本质上,有一个主要实体 Song 表示从目录加载的音乐文件,但在将歌曲添加到数据库(使用休眠)后,我要做的第一件事是将其添加到执行器的管道中以进行进一步处理,以便实例代表每首歌曲的对象仍在内存中,并且在歌曲被处理之前一直如此,所以我不会节省太多内存。
我的第一个想法是,当我将歌曲添加到管道时,我只存储歌曲的 id,并且只在需要处理时才获取实际实体,但这似乎与 Hibernate 不相符。
相反,我想知道我是否将 Ehcache 与配置为使用磁盘缓存的 Hibernate 一起使用,这是否意味着我使用的实例不会使用太多内存,或者一旦我实际参考了它们,它们是否会使用与以前一样多的内存它们在我的应用程序中。
【问题讨论】: