1

我正在考虑两种方法

  • 将 JSON 响应缓存为 JSON 文件
  • 使用 Reservoir缓存 Java POJO(JSON 响应已经使用 Retrofit反序列化)。

数据描述:
这里我要缓存的数据是一个电子商务网站的 20 种产品的列表。它们不是复杂的对象,也没有嵌套,因为这里使用了 jsonapi.org 规范。使用 Retrofit,我已经可以获得 20 个 Product POJO,其中 Product 是具有少于 10 个属性的 Java 模型类。

哪种方法更好,为什么?

我不考虑 SQLite 数据库,因为我认为它更昂贵并且只适用于

  • 需要数据完整性
  • 有写操作,例如购物车
  • 数据量大、关系复杂
4

1 回答 1

1

这实际上取决于两个主要因素:1. 用例 2. 对特定系统的舒适程度。

你可以使用任何你认为适合你的东西。如果你真的需要类似 DB 的数据结构和一些复杂的查询机制,SQLite 是可以的。如果对您有帮助,您可以使用一些 ORM 系统(如 GreenDAO 或 ORMLite)来包装 SQLite。还有Realm,更多面向对象的方法(有问题)。

您还可以选择 SharedPreferences(我个人不喜欢这种方法),或者只是使用 parcelable 或 Java 序列化将 POJO 序列化为文件。这实际上取决于您想要实现的目标,因为任何方法都有其优点和缺点。

在面向 SQL 的数据库的情况下,有一个很大的 SQL 用户群,这很好,但您需要的映射不是那么好

领域,可能是移动设备数据库中的下一件大事(),但它仍然不成熟,检索时您必须使用具体类(),我可能想要一个抽象/接口/基类。

Parcelable - 你必须写很多代码(不好)但它很快(

Java 序列化 - 易于重构任何可序列化的类,无需序列化代码,适用于中小型数据量。因为它使用反射,所以对于真正大量的数据来说并不是那么好。

于 2016-07-22T10:41:06.713 回答