看看各种在线资源,关于这个主题,我似乎无法弄清楚这一点。
我有一个如下所示的模型对象:HomeResponse
@Entity(tableName = "HomeData")
public class HomeResponse {
@PrimaryKey
public int counts;
public List<Trade> mTrades;
}
我的Trade
对象看起来像这样:
@Entity
public class Trade {
public int tradeId;
public String title;
}
我看到的第一件事是@TypeConverter 然而,这似乎仅适用于仅包含原始字段的POJO。
看来,我正在寻找的是@ForeignKey
这仍然感觉不对。因为我的Trades
对象不仅会出现在HomeResponse
对象中。我可能会在与其他Tades相关的其他POLO中拥有它。
让HomeResponse
同时将Trades
对象存储在数据库中的理想方法是什么?
答案 0 :(得分:1)
我有一个如下所示的模型对象:HomeResponse
这不是一个合适的房间@Entity
。删除public List<Trade> mTrades
字段。
看来,我正在寻找的是@ForeignKey
在Trade
上更正,指向HomeResponse
。
这仍然感觉不对。因为我的Trades对象不会只在HomeResponse对象中。我可能会在与其他Tades相关的其他POLO中拥有它。
我不确定POLO是什么。无论如何,实体充当数据库表的模型。把房间放在一边几分钟,然后设计你的桌子结构。然后,创建镜像表结构的实体类。
将HomeResponse同时存储在DB中的Trades对象的理想方法是什么?
它没有。您的DAO会保存HomeResponse
个对象和Trade
个对象。