如何将列表<>保存为房间中表格中的列?



我正在构建一个应用程序,其中有一个Room实体,它的一列应该包含List。

在使用Flow、Coroutines和Room的应用程序中执行此操作的最佳方法是什么

我尝试使用Jackson进行序列化(将List变成一个长json字符串,然后在提取时将其带回List(,但我不确定这是否是正确的方法。

谢谢你,

在使用Flow、Coroutines和Room的应用程序中,最好的方法是什么?

这是非常开放的意见。

从数据库的角度来看,方法是将任何列表作为一个表,从而

  • 减少JSON膨胀从而降低效率
  • 减少重复,从而更有可能符合规范化
  • 不会潜在地引入复杂性甚至更大的低效率(例如,下面的答案中没有提到,但第一个字符的通配符必须进行完整的表扫描(
    • 也许可以考虑使用like关键字在单个查询中匹配多个标题的问答,如果采用按表列出的方法,那么简单的SELECT * FROM task WHERE task_tags IN(:taglist)也可以这样做

从编码的角度来看,当嵌入JSON时,编码更简单,因为复杂的代码在JSON库中。

最新更新