使用Room时如何建模数据

时间:2019-06-19 20:06:05

标签: android android-room

我正在阅读Room,它处理实体之间关系的方式都是可以理解的,但令人困惑。我无法为使Room感到高兴的是“适当的”数据模型。问题在于,我发现的所有示例都显示了如何处理简单的关系,但没有解决嵌套或包含对多个其他实体的引用的实体。

回到开始,我的问题是我应该如何建模我的数据,以使使用Room变得尽可能容易?

  1. 是否有可能与框架无关的数据模型?这对我来说是正确的。框架不应规定实体建模的方式。我希望能够像完全没有数据库一样遍历数据模型。
  2. 假设我有一个较深的层次结构,例如:Game有多个Players和多个RoundsRound有多个Turns。一个Turn可以有多个Steps。如何根据Room建模?阅读@Relation时,建议应该有“包装器” POJO。但这是否意味着我必须在这里创建类TurnWithStepsRoundWithTurnWithStepsGameWithRoundWithTurnWithSteps
  3. 这似乎还意味着,无论何时使用代码中的实体,我都必须决定要使用该实体的哪个“视图”。因此,我不能简单地使用Game并将其当作真正的,建模良好的类来使用吗?

0 个答案:

没有答案