我正在考虑如何在我的Android应用中理想地实现缓存层。
目前,我有通用 Activity ,可显示来自远程服务器的数据。数据由DTO TemplateInstance表示。每个TemplateInstance都有一个包含组件的Map,每个组件可以具有子组件。组件本身可以是Text(字符串),Image(字节数组)或Time(或通过对Component进行子分类的任何对象)。
当前,每次启动Activity时,我的应用程序都会从服务器加载TemplateInstance。
我现在想在应用程序中实现缓存层,以便
我的策略如下:
我已经使用 db4o 成功地实现了这一点。此解决方案仅存在两个问题:
现在,我正在寻找db4o的最佳替代品。到目前为止,我的想法是:
您认为什么是最好的解决方案?
我对此的研究将我带到了我从未使用过的 EHCache 和 JCS 。就Android手机上的资源而言,您认为它们是否合适?或者您还有其他建议吗?
最佳答案
如果我正确了解您的情况,我认为您应该实现自己的缓存解决方案。
我会使用HashMap<id, TemplateInstance>
。 HashMap是可序列化的,您可以分别使用ObjectOutputStream
和ObjectInputStream
存储/加载它。