如何处理实体中的对象引用?
How to handle Object References in Entity?
我有以下结构要保存到应用程序数据库:
@Entity
public class Project{
@primaryKey
String id;
String name;
[...]
Country country;
[...]
}
我的国家/地区实体如下所示:
@Entity
public class Country {
@PrimaryKey
private String id;
private String name;
private String pk;
}
现在回答我的问题:如何让 Room 知道国家和项目实体之间的关系?
请参考官方文档
https://developer.android.com/reference/android/arch/persistence/room/Relation.html
Room 不能有嵌套的实体,您可以将 POJO 类 嵌入到一个实体中,但它会被扁平化为一个 table 或者如果您希望将 Country 作为一个实体,那么您将拥有将 county_id 存储在项目实体中并将其索引为外键。
有关嵌入式字段的更多信息:https://developer.android.com/reference/android/arch/persistence/room/Embedded.html
更多关于外键的信息:https://developer.android.com/reference/android/arch/persistence/room/ForeignKey.html
我有以下结构要保存到应用程序数据库:
@Entity
public class Project{
@primaryKey
String id;
String name;
[...]
Country country;
[...]
}
我的国家/地区实体如下所示:
@Entity
public class Country {
@PrimaryKey
private String id;
private String name;
private String pk;
}
现在回答我的问题:如何让 Room 知道国家和项目实体之间的关系?
请参考官方文档
https://developer.android.com/reference/android/arch/persistence/room/Relation.html
Room 不能有嵌套的实体,您可以将 POJO 类 嵌入到一个实体中,但它会被扁平化为一个 table 或者如果您希望将 Country 作为一个实体,那么您将拥有将 county_id 存储在项目实体中并将其索引为外键。
有关嵌入式字段的更多信息:https://developer.android.com/reference/android/arch/persistence/room/Embedded.html
更多关于外键的信息:https://developer.android.com/reference/android/arch/persistence/room/ForeignKey.html